2015-08-23 4 views
0

я прочитал в "Программирование в широком масштабе параллельных процессоров (2-е изд) чтоНити на блок в CUDA 7

Каждый блок нить может иметь до 1024 потоков в CUDA 3.0 и более поздних. Некоторые предыдущие версии CUDA допускают только до 512 потоков в блоке

Недавно я загрузил набор инструментов CUDA 7.0 и хочу знать, соответствует ли приведенная выше информация в версии сегодняшнего дня.

Кроме того, представляется, что this вопрос имеет устаревшую информацию (она уже устареет в 2012 году, когда упомянутая книга была опубликована)

+0

Я довольно уверен, что это не говорит, что – talonmies

+0

@talonmies Мне может быть не хватать больше очков (я только начал бороться с CUDA), но в сноске 7 приведена цитата, как показано в книге. –

+2

Да, я просто нашел это. Это ужасно написано. Количество потоков не привязано к версии CUDA, оно привязано к возможности CUDA. Тот факт, что CUDA 3 и вычислительные возможности 2.0 появились в одно и то же время, не делают их одинаковыми – talonmies

ответ

3

CUDA 7 поддерживает только CUDA устройства вычислительных возможностей версии 2.0 и выше. Все такие устройства могут поддерживать до 1024 потоков на каждый блок.

Число 512 не относится к устройствам вычислительных возможностей 1.x, и такие устройства больше не поддерживается CUDA 7.

Следует отметить, что возможности и вычисление CUDA версия два разных понятия.

1

Вы можете посмотреть, сколько потоков на блок вашего GPU поддерживает с cudaGetDeviceProperties функции: http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/docs/online/group__CUDART__DEVICE_g5aa4f47938af8276f08074d09b7d520c.html

#include <stdio.h> 

int main() { 
    int nDevices; 

    cudaGetDeviceCount(&nDevices); 
    for (int i = 0; i < nDevices; i++) { 
    cudaDeviceProp prop; 
    cudaGetDeviceProperties(&prop, i); 
    printf("Device Number: %d\n", i); 
    printf(" Device name: %s\n", prop.name); 
    printf(" Max threads per block: %d\n", prop.maxThreadsPerBlock); 
    } 
} 

Этот код был адаптирован из http://devblogs.nvidia.com/parallelforall/how-query-device-properties-and-handle-errors-cuda-cc/

Смежные вопросы