Там ясно сказано, что Tegra TX1 имеет общую память. Мой вопрос: эта память распределяется между процессором и графическим процессором? Или эта память распределяется между разными блоками графического процессора.
Общая память Jetson Tegra TX1
Ответы (2)
CPU и GPU имеют одинаковую систему памяти. То есть системная память DRAM также является той же самой физической памятью, из которой выделена глобальная память графического процессора. Различные методы, такие как нулевое копирование и унифицированная память, могут в основном устранить логическое различие между данными системной памяти и глобальными данными графического процессора.
Кроме того, графический процессор в Tegra TX1, как и все графические процессоры с поддержкой CUDA, имеет общую память CUDA. Это память, которая распределяется между потоками в определенном блоке, но не распределяется между разными блоками в графическом процессоре. Основной системой памяти, совместно используемой различными блоками графического процессора, является глобальная система памяти, которая в Tegra TX1 (физически) совпадает с системной памятью DRAM, как уже упоминалось.
ЕСЛИ вы выделили блок памяти с помощью cudamalloc(), то ДА. Она автоматически становится общей глобальной памятью между процессором и графическим процессором.
Пожалуйста, НЕ путайте его с локальной памятью CUDA, называемой "Shared MEM". {Общий доступ между потоками одного и того же БЛОКА}.
Помните: "ОБЩАЯ ПАМЯТЬ" в CUDA — это ТУРБО-скорость программируемый кэш внутри блока SM графического процессора! :-)