Чисто физически память видеокарты можно разделить на DRAM и на память, размещенную непосредственно на видеокарте.
Тип памяти
Расположение
Кэш-ся
Доступ
Уровень доступа
Время жизни
Регистры
Мультипроцессор
Нет
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
Каждый мультипроцессор содержит 8192 или 16384 32-хбитовых регистров. Имеющиеся регистры распределяются между нитями блока на этапе компиляции. Каждая нить получает в свое монопольное использование некоторое количество регистров, доступных как на чтение, так и на запись. Регистры обладают максимальной скоростью доступа. Если регистров не хватает, то задействуется локальная память. Доступ к локальной памяти характеризуется высокой латентностью (от 400 до 600 тактов). Разделяемая память – быстродействующая. Она выделяется на уровне блоков. Каждый блок получает одно и то же количество этой памяти. Каждый мультипроцессор содержат 16 Кб разделяемой памяти. Эта память обладает небольшой латентностью. Глобальная память – обычная DRAM память, выделяемая специальными функциями на CPU. Латентность высокая. Константная и текстурная память имеют возможность кэширования. Из них можно только читать информацию. Запись в них может осуществляться только ЦП. Общий объем константной памяти ограничен 64 Кб.