CUDA: производительность памяти, что такое пропускная способность глобальной памяти - PullRequest
2 голосов
/ 02 ноября 2011

Я узнаю об оптимизации CUDA. Я нашел презентацию по этой ссылке: Оптимизация CUDA by Paulius Micikevicius .

В этой презентации они говорят о

МАКСИМАЦИЯ ГЛОБАЛЬНОЙ ПАМЯТИ ПАМЯТИ

говорят, что объединение глобальной памяти улучшит пропускную способность.

Мой вопрос, как рассчитать пропускную способность глобальной памяти? Может кто-нибудь объяснить мне на простом примере программы.

1 Ответ

7 голосов
/ 11 декабря 2011

Теоретическая пропускная способность может быть рассчитана с использованием спецификации оборудования.

Например, NVIDIA GeForce GTX 280 использует оперативную память DDR с тактовой частотой памяти 1107 МГц и интерфейсом памяти шириной 512 бит.Используя эти элементы данных, максимальная теоретическая пропускная способность памяти NVIDIA GeForce GTX 280 составляет 141,6 ГБ / с:

enter image description here

В этом расчете тактовая частота памяти преобразуется в Гцумножается на ширину интерфейса (делится на 8, чтобы преобразовать биты в байты) и умножается на 2 из-за двойной скорости передачи данных.Наконец, этот продукт делится на 109, чтобы преобразовать результат в ГБ / с (Гбит / с).

Эффективная пропускная способность рассчитывается по времени выполнения определенных действий программы и по тому, как программа получает доступ к данным.Для этого используйте следующее уравнение:

Эффективная пропускная способность = ((Br + Bw) / 109) / время

Здесь эффективная пропускная способность указывается в единицах Гбит / с, Br - это количество байтов, прочитанных на ядро, Bw - количество байтов, записанных на ядро, и время дается в секундах.

Более подробная информация доступна в Руководстве по лучшей практике CUDA.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...