Блоки потоков активны на SM - PullRequest
       105

Блоки потоков активны на SM

0 голосов
/ 13 октября 2018

Как узнать, сколько блоков потоков будет потенциально активным одновременно в моей общей памяти объемом 40 КБ gtx780?Как я могу проверить максимальную вместимость на SM?

1 Ответ

0 голосов
/ 13 октября 2018

Максимальная занятость зависит от размера вашего блока, количества регистров, необходимых для функции ядра на поток, и количества разделяемой памяти, необходимого для блока.Вы можете вычислить его самостоятельно, основываясь на определенных для устройства пределах, которые вы можете запросить.Если вы используете относительно свежую версию CUDA, API-интерфейс драйвера *1001* *, а также API времени выполнения * имеют функции для расчета занятости.

Обратите внимание, что вы будете толькобыть в состоянии вычислить теоретическую максимальную занятость.Независимо от того, как вы вычислите это число, не гарантирует , что это фактическое число, которое будет работать на устройстве все время.Используйте этот номер в качестве ориентира, например, чтобы решить, какую конфигурацию запуска лучше всего запустить.Но не пишите свой код так, чтобы он зависел от конкретного количества блоков, работающих одновременно.Единственный способ получить гарантированное количество блоков, запущенных одновременно, - это использовать сравнительно недавнюю функцию Cooperative Kernel Launch в CUDA 9 +…

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