Я вижу некоторые похожие термины при чтении иерархии памяти графических процессоров, и, поскольку в прошлых версиях были некоторые архитектурные изменения, я не знаю, могут ли они использоваться вместе или имеют разные значения.Устройство M2000, которое совместимо с вычислениями. 5.2.
Верхний уровень (ближайший к конвейеру) представляет собой унифицированный кэш L1 / texture , который составляет 24 КБ на SM.Является ли унифицированным для инструкций и данных?
Ниже этого кеша L2 , который также известен как общая память, которая используется совместновсе SM в соответствии с ./deviceQuery, размер L2 составляет 768 КБ.Если это совокупное значение, то каждый SM имеет 768 КБ / 6 = 128 КБ.Однако согласно руководству по программированию общая память составляет 96 КБ.
Что такое постоянная память тогда и где она находится?Информации о его размере нет ни в метрике deviceQuery, ни в nvprof.Руководство по программированию гласит:
Существует также два дополнительных пространства памяти только для чтения, доступных для всех потоков: пространство памяти констант и текстур.Глобальные, постоянные и текстурные области памяти оптимизированы для различных видов использования памяти (см. Доступ к памяти устройства).Память текстур также предлагает различные режимы адресации, а также фильтрацию данных для некоторых конкретных форматов данных (см. Текстура и Поверхностная память).
Глобальная, постоянная и текстурная памяти сохраняются при запуске ядра одним и тем жеприложение.
Ниже L2 находится глобальная память, известная как устройство память, которая может быть 2 ГБ, 4 ГБ и ...