Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Перечислите виды и характеристики памяти, доступной из программы CPU при использовании архитектуры CUDA.






Вопросы к защите л.р. по графике

1. Что такое ядро в терминологии CUDA?

Ядро - функция, исполняемая на устройстве.

2. Как задается размерность и количество потоков ядра, выполняемого графическим процессором?

При вызове функции используется синтаксис < < < dg, db> > >, где dg – размерность сетки, соответствующая числу параллельных блоков нитей, в которых будет исполняться ядро; db – размерность блока, равная числу нитей на блок. Размерность блока доступна через встроенную переменную blockDim. Количество потоков в блоке и количество блоков в решётке выбирается программистом исходя из максимизации загрузки ресурсов MP и с учётом аппаратных ограничений (количество регистров, разделяемой памяти и т.д.).

Перечислите виды и характеристики памяти, доступной из программы GPU.

Каждое арифметико-логическое устройство (АЛУ) обладает собственной регистровой и локальной памятью. Более быстрая разделяемая память доступна для каждого АЛУ блока. Мультипроцессоры (совокупность устройства управления, АЛУ, регистровой, локальной и разделяемой памяти) имеют доступ к значительно более медленным кэшу текстур, кэшу констант и глобальной памяти устройства.

4. Как указать требуемое размещение переменной в памяти GPU (регистровой, разделяемой, глобальной, памяти текстур, …)?

С помощью квалификатора переменной. __device__ - размещение в глобальной памяти устройства, __shared__ - размещение в разделяемой памяти мультипроцессора, __constant__ - размещение в памяти констант, доступной только для чтения.

Перечислите виды и характеристики памяти, доступной из программы CPU при использовании архитектуры CUDA.

Чисто физически память GPU можно разделить на DRAM и на память, размещенную непосредственно на GPU (точнее, в потоковых мультипроцессорах). Однако классификация памяти в CUDA не ограничивается ее чисто физическим расположением.

Ниже приводятся доступные виды памяти в CUDA и их основные характеристики.

Тип памяти Расположение Кешируется Доступ Уровень доступа Время жизни
Регистры Мультипроцессор Нет R/w Per-thread Нить
Локальная DRAM Нет R/w Per-thread Нить
Разделяемая Мультипроцессор Нет R/w Все нити блока Блок
Глобальная DRAM Нет R/w Все нити и CPU Выделяется CPU
Константная DRAM Да R/o Все нити и CPU Выделяется CPU
Текстурная DRAM Да R/o Все нити и CPU Выделяется CPU

6. С помощью функций какой группы осуществляется копирование блоков данных из основной памяти CPU в глобальную память GPU?

Копирование данных между CPU и GPU осуществляется с помощью функций вида cudaMemcpy (void* dst, constvoid* src, size_tcount, enumcudaMemcpyKindkind). Чтобы копировать из основной памяти CPU в глобальную память GPU последний аргумент должен иметь вид cudaMemcpyHostToDevice.

Копирует блок памяти размером count байт, расположенный по адресу src, в память по адресу dst. Один из этих блоков размещается в основной памяти компьютера, второй – в глобальной памяти графического процессора, какой из них где – определяется значением аргумента kind (допустимыcudaMemcpyHostToDevice и cudaMemcpyDeviceToHost). Возвращает либо код успешного завершения, либо код ошибки.

7. Что такое тип данных ulong2? Какие поля содержит этот тип данных?

ulong2 – беззнаковыйlong с размерностью 2 и содержит поля x и y.

*longдля чисел, которые не помещаются в int(integer).

Содержит 64-разрядные (8-байтные) знаковые целые числа в диапазоне от -9, 223, 372, 036, 854, 775, 808 до 9, 223, 372, 036, 854, 775, 807 (9.2...E+18).

8. Какова максимальная размерность блока в потоках?

Размерность блока доступна через встроенную переменную blockDim. Максимальные размерности: 512, 512, 64.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.