Программирование графических процессоров. Вариант 11
Тип работы: Работа Контрольная Форматы файлов: Microsoft Word Сдано в учебном заведении: ДО СИБГУТИ
Описание: Вариант №11
Задание 1. Дана спецификация графического процессора: 1. Максимальное число варпов на мультипроцессор: 64 2. Максимальное число блоков на мультипроцессор: 16 3. Максимальное количество 32-х битных регистров на мультипроцессор: 65536 4. Максимальное количество 32-х битных регистров на блок: 65536 5. Максимальное количество 32-х битных регистров на нить: 255 6. Размер разделяемой памяти мультипроцессора (байт): 32768 7. Размер разделяемой памяти блока (байт): 24576 Параметры запускаемой программы: 1. Размер блока: 256 2. Разделяемая память на блок (байт): 2000 1. 32-х битных регистров на нить: 10 Рассчитайте теоретическую заполняемость? Чем она ограничена?
Задание 2. Пусть разделяемая память мультипроцессора поделена на 4-х байтовые слова, и каждое слово по порядку пронумеровано от 1 до N. К словам обращаются нити одного варпа. Нити варпа пронумерованы от 0 до 31. В таблице ниже указано какая нить к какому 4-х байтовому слову обращается. Номер нити Номер слова 0 30 1 63 2 126 3 255 4 1 5 33 6 63 7 95 8 127 9 160 10 191 11 224 12 30 13 63 14 126 15 255 16 30 17 63 18 126 19 255 20 510 21 1023 22 2046 23 4095 24 255 25 288 26 319 27 352 28 383 29 416 30 447 31 480 Рассчитайте степень конфликта банков данных в данном доступе к разделяемой памяти?
Задание 3. Реализуйте два параллельных алгоритма умножения матриц с использованием технологии CUDA без использования разделяемой памяти. Первый алгоритм должен использовать стандартную схему умножения матриц, а второй должен подразумевать, что вторая матрица хранится в транспонированном виде. Проанализируйте эффективность доступа алгоритмов к глобальной памяти.