Лабораторные работы №1-3 по курсу «Программирование графических процессоров»
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Excel
- Microsoft Word
Описание
Лабораторная работа №1
по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные за-дания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте параллельный алгоритм умножения AxV, где A – матрица, V – вектор.
3. Реализуйте параллельный алгоритм умножения VxA, где A – матрица, V – вектор.
4. Постройте графики зависимости времени выполнения алгоритма от размера матрицы и вектора (Размеры матрицы 1000x500, 1000x1000, 1500x1000, 2000x1000, 2000x1500, 2500x1500, 2500x2000).
5. Прочитайте главу "Профилирование программ", ответьте на контрольные вопросы в конце главы (ответы на контрольные вопросы не нужно включать в отчёт по лаборатор-ной работе).
6. Проанализируйте, реализованные алгоритмы при помощи утилиты nvprof на эффек-тивность доступа к глобальной памяти.
=====================================
Лабораторная работа №2
по курсу «Программирование графических процессоров» на тему «Работа с разделяемой памятью»
Задание
1. Прочитайте главу из теоретического материала "Разделяемая память" и ответьте на кон-трольные вопросы (ответы на контрольные вопросы не нужно включать в отчёт по лабо-раторной работе).
2. Оптимизируйте алгоритмы, реализованные в лабораторной работе №1 при помощи раз-деляемой памяти.
3. Постройте графики зависимости времени выполнения алгоритма от размера матрицы и вектора (Размеры матрицы 1000x500, 1000x1000, 1500x1000, 2000x1000, 2000x1500, 2500x1500, 2500x2000).
4. Проанализируйте, реализованные алгоритмы при помощи утилиты nvprof на эффек-тивность доступа к глобальной памяти.
====================================
Лабораторная работа №3
по курсу «Программирование графических процессоров» на тему «Работа с потоками CUDA»
1. Прочитайте главы теоретического материала под названиями "Pinnedmemory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контроль-ные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 эле-ментов и вектора размером 2500 элементов.
по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные за-дания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте параллельный алгоритм умножения AxV, где A – матрица, V – вектор.
3. Реализуйте параллельный алгоритм умножения VxA, где A – матрица, V – вектор.
4. Постройте графики зависимости времени выполнения алгоритма от размера матрицы и вектора (Размеры матрицы 1000x500, 1000x1000, 1500x1000, 2000x1000, 2000x1500, 2500x1500, 2500x2000).
5. Прочитайте главу "Профилирование программ", ответьте на контрольные вопросы в конце главы (ответы на контрольные вопросы не нужно включать в отчёт по лаборатор-ной работе).
6. Проанализируйте, реализованные алгоритмы при помощи утилиты nvprof на эффек-тивность доступа к глобальной памяти.
=====================================
Лабораторная работа №2
по курсу «Программирование графических процессоров» на тему «Работа с разделяемой памятью»
Задание
1. Прочитайте главу из теоретического материала "Разделяемая память" и ответьте на кон-трольные вопросы (ответы на контрольные вопросы не нужно включать в отчёт по лабо-раторной работе).
2. Оптимизируйте алгоритмы, реализованные в лабораторной работе №1 при помощи раз-деляемой памяти.
3. Постройте графики зависимости времени выполнения алгоритма от размера матрицы и вектора (Размеры матрицы 1000x500, 1000x1000, 1500x1000, 2000x1000, 2000x1500, 2500x1500, 2500x2000).
4. Проанализируйте, реализованные алгоритмы при помощи утилиты nvprof на эффек-тивность доступа к глобальной памяти.
====================================
Лабораторная работа №3
по курсу «Программирование графических процессоров» на тему «Работа с потоками CUDA»
1. Прочитайте главы теоретического материала под названиями "Pinnedmemory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контроль-ные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 эле-ментов и вектора размером 2500 элементов.
Дополнительная информация
Лабораторная работа 1,2,3
Оценка: Зачет
Год сдачи: 2022
Уважаемый , Милешко Антон Владимирович
Оценка: Зачет
Год сдачи: 2022
Уважаемый , Милешко Антон Владимирович
Похожие материалы
Программирование графических процессоров. Лабораторная работа №1
pleze
: 11 сентября 2021
Тема: Работа с глобальной памятью
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDA C", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте
300 руб.
Лабораторные работы №1-3 по курсу «Программирование графических процессоров». Вариант общий
teacher-sib
: 13 июня 2022
Лабораторная работа №1 по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Задание
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDA C", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы н
600 руб.
Лабораторная работа №1 по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
1455623
: 22 июня 2022
Выполнение лабораторной работы поможет получить навыки, требующиеся для выполнения первого и третьего заданий контрольной работы.
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDA C", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав
250 руб.
Программирование графических процессоров - лабораторные работы 1-7
Dmitry17
: 18 ноября 2023
Список работ:
- Лабораторная работа 1 - Первая программа
- Лабораторная работа 2 - nvprof
- Лабораторная работа 3 - cuda-memcheck
- Лабораторная работа 4 - Обработка ошибок
- Лабораторная работа 5 - Алгоритм Якоби
- Лабораторная работа 6 - События
- Лабораторная работа 7 - Простые потоки в CUDA
Запуск
Приложенные исполняемые файлы скомилированны под запуск на Linux-машине на кластере СибГУТИ.
Если необходимо использовать на другой ОС, нужно перекомпилировать программы.
Важно: начиная
700 руб.
Лабораторные работы №№1-3 по дисциплине: Программирование графических процессоров
IT-STUDHELP
: 3 декабря 2021
Лабораторная работа 1
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение ин-формации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте параллельны
900 руб.
Программирование графических процессоров. Лабораторная работа №1. Вариант общий
Damovoy
: 15 апреля 2021
Тема: Работа с глобальной памятью
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDA C", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте
390 руб.
Лабораторная работа 1 Программирование графических процессоров Все варианты 2023 год
SibSUTTI
: 1 сентября 2023
2023 год
СибГУТИ
Сибирский государственный университет телекоммуникаций и информатики
Милешко Антон Владимирович
Тема: Лабораторная работа 1 Программирование графических процессоров Все варианты 2023 год
Задания
Лабораторная работа №1 по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Выполнение лабораторной работы поможет получить навыки, требующиеся для выполнения первого и третьего заданий контрольной работы.
Задание
1. Прочитайте главы теоретического
198 руб.
Контрольная работа по курсу «Программирование графических процессоров» Вариант №2
Леший
: 23 апреля 2022
Задание 1.
Дана спецификация графического процессора:
1. Максимальное число варпов на мультипроцессор: 64
2. Максимальное число блоков на мультипроцессор: 32
3. Максимальное количество 32-х битных регистров на мультипроцессор: 65536
4. Максимальное количество 32-х битных регистров на блок: 65536
5. Максимальное количество 32-х битных регистров на нить: 255
6. Размер разделяемой памяти мультипроцессора (байт): 65536
7. Размер разделяемой памяти блока (байт): 49152
Параметры запускаемой програм
666 руб.
Другие работы
Схема расположения монтажа резервуара
Mikhail777
: 16 марта 2024
Монтаж РВС (резервуар вертикальный стальной) (Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование для добычи и подготовки нефти и газа-Курсовая работа-Дипломная работа
440 руб.
Строение и свойства карбонатных пород среднего карбона района ММДЦ Москва-Сити
evelin
: 5 января 2014
Объектом исследования в моей работе являются среднекаменноугольные карбонатные породы района Московского Международного Делового Центра (ММДЦ) «Москва-Сити», залегающие на глубинах 59-99,8 м. Породы представляют собой известняки и доломиты различного возраста и структуры. Они характеризуют (снизу вверх) смедвинскую подсвиту каширского горизонта, а также васькинскую, улитинскую и щуровскую подсвиты подольского горизонта московского яруса среднего карбона.
В ходе работы был проведен ряд опытов с
15 руб.
Ліпідний профіль та якість життя хворих на хронічну хворобу нирок V стадії, які лікуються програмним гемодіалізом
alfFRED
: 7 февраля 2013
ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ
Актуальність теми. Питання діагностики і лікування хронічної хвороби нирок (ХХН) - це одна з найважливіших проблем сучасної нефрології. ХХН V стадії характеризується різким зниженням всіх ниркових функцій і потребує замісної терапії - лікування програмним гемодіалізом (ППГД), перитонеальним діалізом або проведення трансплантації нирки. Незважаючи на постійне удосконалення методів замісної терапії, вони до тепер не забезпечують повної корекції обмінних, гормональних
Розробка програми, яка дозволяє розв’язувати систему рівнянь за формулами Крамера
SerFACE
: 11 октября 2013
Лістинг програми на мові С++:
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
void Kramer(double C[3][3],double D[3][1]);//Prototip funkcii
int main() {
int i,j;
double A[3][3],B[3][1];
char z='y';
cout<<"\n"<<endl;
cout<<"\n"<<endl;
while (z=='y')
Висновок: навчився будувати програму, яка вирішує матриці методом Крамера.
4 руб.