Программирование графических процессоров Лабораторная 3
Состав работы
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Выполнение лабораторной работы поможет получить навыки требующиеся для выполнения третьего задания контрольной работы.
Задание
1. Прочитайте главы теоретического материала под названиями "Pinned memory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 элементов и вектора размером 2500 элементов.
Методические указания
Для выполнения лабораторной работы требуется модифицировать код, выполняемый на хосте таким образом, чтобы данные передавались на устройство частями асинхронно, после этого выполнялось функция-ядро над переданной частью, после завершения вычислений часть ответа асинхронно должна копироваться на хост.
На хосте создайте и проинициализируйте матрицу и вектор, которые будут умножаться. Затем выделите память на хосте под результирующий вектор и проинициализируйте его нулями. Выделите память под матрицу и вектора на устройстве, создайте нужное количество потоков (начните с двух потоков).
Теперь нужно определиться какие части данных передавать в каждый поток. Разделение нужно произвести таким образом, чтобы результатом работы функции-ядра была часть конечного результата, не требующая дальнейшей обработки. В таком случае имеет смысл в каждом потоке передавать на устройство часть строк матрицы, а вектор передать сразу полностью, потому что для вычислений, каждой нитью используется одна строка из матрицы и вектор. Результатом работы нити будет один элемент результирующего вектора.
Для того чтобы определить размер порции данных нужно количество строк матрицы поделить на количество потоков, и результат умножить на длину строки. После этого полностью скопируйте значения вектора на устройство. И для каждого потока асинхронно скопируйте часть данных на устройство, используя функцию cudaMemcpyAsync, запустите вычисления над порцией данных, асинхронно скопируйте результат на хост. В конце синхронизируйте все потоки вызовом функции cudaDeviceSynchronize() – эта функция будет ожидать завершения всех запущенных потоков.
Проведите исследование зависимости времени работы алгоритма от количества потоков. Начните с двух потоков и увеличивайте их количество до тех пор, пока время, затраченное на вычисления, не перестанет уменьшаться. Замеры времени следует проводить, включая асинхронные пересылки данных.
Задание
1. Прочитайте главы теоретического материала под названиями "Pinned memory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 элементов и вектора размером 2500 элементов.
Методические указания
Для выполнения лабораторной работы требуется модифицировать код, выполняемый на хосте таким образом, чтобы данные передавались на устройство частями асинхронно, после этого выполнялось функция-ядро над переданной частью, после завершения вычислений часть ответа асинхронно должна копироваться на хост.
На хосте создайте и проинициализируйте матрицу и вектор, которые будут умножаться. Затем выделите память на хосте под результирующий вектор и проинициализируйте его нулями. Выделите память под матрицу и вектора на устройстве, создайте нужное количество потоков (начните с двух потоков).
Теперь нужно определиться какие части данных передавать в каждый поток. Разделение нужно произвести таким образом, чтобы результатом работы функции-ядра была часть конечного результата, не требующая дальнейшей обработки. В таком случае имеет смысл в каждом потоке передавать на устройство часть строк матрицы, а вектор передать сразу полностью, потому что для вычислений, каждой нитью используется одна строка из матрицы и вектор. Результатом работы нити будет один элемент результирующего вектора.
Для того чтобы определить размер порции данных нужно количество строк матрицы поделить на количество потоков, и результат умножить на длину строки. После этого полностью скопируйте значения вектора на устройство. И для каждого потока асинхронно скопируйте часть данных на устройство, используя функцию cudaMemcpyAsync, запустите вычисления над порцией данных, асинхронно скопируйте результат на хост. В конце синхронизируйте все потоки вызовом функции cudaDeviceSynchronize() – эта функция будет ожидать завершения всех запущенных потоков.
Проведите исследование зависимости времени работы алгоритма от количества потоков. Начните с двух потоков и увеличивайте их количество до тех пор, пока время, затраченное на вычисления, не перестанет уменьшаться. Замеры времени следует проводить, включая асинхронные пересылки данных.
Дополнительная информация
зачет
Похожие материалы
Программирование графических процессоров. Лабораторная работа №3
pleze
: 20 марта 2022
Тема: Работа с потоками CUDA
Задание
1. Прочитайте главы теоретического материала под названиями "Pinned memory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгоритмов реализованные в лабораторной работе №1.
3. Определите оптимальное количество потоков для матрицы размером 2500x2500 элементов и вектора размером 2500 элементов.
300 руб.
Программирование графических процессоров. Лабораторная работа №3. Вариант общий
Damovoy
: 25 апреля 2021
Лабораторная работа №3 по курсу
«Программирование графических процессоров»
на тему «Работа с потоками CUDA»
Выполнение лабораторной работы поможет получить навыки требующиеся для выполнения третьего задания контрольной работы.
Задание
1. Прочитайте главы теоретического материала под названиями "Pinned memory" и "Потоки (streams) в CUDA". Ответьте на контрольные вопросы в конце глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Примените потоки для алгори
500 руб.
Лабораторные работы №1-3 по курсу «Программирование графических процессоров»
Леший
: 23 апреля 2022
Лабораторная работа №1
по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные за-дания, предложенные в конце этих глав (ответы на кон
777 руб.
Лабораторные работы №№1-3 по дисциплине: Программирование графических процессоров
IT-STUDHELP
: 3 декабря 2021
Лабораторная работа 1
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение ин-формации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте параллельны
900 руб.
Лабораторная работа 3 Программирование графических процессоров Все варианты 2023 год
SibSUTTI
: 1 сентября 2023
2023 год
СибГУТИ
Сибирский государственный университет телекоммуникаций и информатики
Милешко Антон Владимирович
Тема: Лабораторная работа 3 Программирование графических процессоров Все варианты 2023 год
Задания
Лабораторная работа №3 по курсу «Программирование графических процессоров» на тему «Работа с потоками CUDA»
Выполнение лабораторной работы поможет получить навыки требующиеся для выполнения третьего задания контрольной работы.
Задание
1. Прочитайте главы теоретического материала под на
198 руб.
Лабораторные работы №1-3 по дисциплине: Программирование графических процессоров. Вариант общий
Roma967
: 20 июля 2024
Лабораторная работа №1
«Работа с глобальной памятью»
Задание лабораторной работы
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт
900 руб.
Лабораторные работы №1-3 по курсу «Программирование графических процессоров». Вариант общий
teacher-sib
: 13 июня 2022
Лабораторная работа №1 по курсу «Программирование графических процессоров» на тему «Работа с глобальной памятью»
Задание
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDA C", "Алгоритм сложения двух векторов на GPU", "События, обработка ошибок и получение информации об устройстве", "Глобальная, локальная и константная память". Ответьте на контрольные вопросы и выполните контрольные задания, предложенные в конце этих глав (ответы н
600 руб.
Лабораторная работа 1-3 по дисциплине: Программирование графических процессоров. Вариант 15
IT-STUDHELP
: 14 мая 2022
Лабораторная работа №1
Задание
1. Прочитайте главы теоретического материала под названиями "Отличия GPU от CPU", "Первая программа на CUDAC", "Алгоритм сложения двух векторов на GPU", "Собы-тия, обработка ошибок и получение информации об устройстве", "Глобальная, локаль-ная и константная память". Ответьте на контрольные вопросы и выполните контроль-ные задания, предложенные в конце этих глав (ответы на контрольные вопросы не нужно включать в отчёт по лабораторной работе).
2. Реализуйте паралле
900 руб.
Другие работы
Организация рекламной кампании чая "Greenfield"
VikkiROY
: 2 марта 2015
Реферат
Содержание
Введение
Рекламная кампания
Основы планирования рекламной кампании. Информация для планирования РК.
Определение рейтинга рекламной продукции.
Этапы планирования рекламной кампании.
Маркетинговые исследования в ходе проведения рекламной кампании
Характеристика моделей проведения рекламной кампании.
Разработка бизнес – плана рекламной кампании.
Характеристика компании
Резюме
Миссия и цели ООО «Орими Трэйд»
Анализ внешней среды
Экономический фактор.
Политический фа
265 руб.
Современное состояние и перспективы развития ТЭК России
alfFRED
: 4 ноября 2013
Содержание:
Введение. 3
Глава 1. Теории международной конкурентоспособности и позиции российского ТЭК 6
1.1 Теоретический аспект проблемы конкурентоспособности. 6
1.2 Современные проблемы воспроизводства сырьевой базы ТЭК.. 23
1.3 Особенности развития современного топливно-энергетического комплекса России 31
Глава 2. Внешнеэкономическая деятельность российских ТЭК.. 37
2.1 Основные направления и динамика участия России на мировом рынке топливно-энергетических ресурсов. 37
2.2 Оценка р
10 руб.
Программирование (часть 1). Лабораторная работа №2. Вариант №5
sibguter
: 5 июня 2018
Задание
Разработать программу для вычисления:
Написать программу для вычисления заданного выражения и вывода на экран полученного значения, используя заданный циклический оператор:
Номер варианта Выражение Оператор цикла
5 -0,5 + 0,7 – 0,9 +...+ 0,23 Repeat
Примечание:
В указанном варианте последним значением выражения является число 0.23. Возможно, здесь допущена ошибка, поскольку во время вычисления выражения в цикле оно никогда не станет равным 0.23.
Предполагаемые варианты:
-0,05 + 0,07 –
39 руб.
Цифровая трансформация в HR менеджменте. Тест с ответами Синергия.
Spero27
: 29 марта 2024
1. В 2020 году работа по цифровизации государственных и муниципальных услуг должна дойти до оценки не менее ... по 5-балльной шкале уровня удовлетворенности качеством их оказания:
• 2,3
• 3,7
• 4
2. В каждом из обязательных региональных проектов в области цифровой экономики обязательно наличие показателей, соответствующих показателям федеральных проектов, так ли это:
• да
• нет
• отчасти
3. В направлении ... среди ключевых целей необходимо выделить построение системы сбора, обработки и аналити
250 руб.