Как оценить относительную производительность CUDA GPU? - PullRequest
2 голосов
/ 21 сентября 2011

Как я могу оценить производительность cuda карт, которые мне не принадлежат, т.е. новые карты?

Например, я нашел неполный пример Cuda, и автор написал, что ему требуется 0,7 с на его GF 8600 GT. Но на моем Quadro это занимает 1,7 с.

Мой вопрос: код, который я использовал для заполнения пробелов, неисправен или GF 8600 действительно в два раза быстрее? Ядро связано с памятью, но моя карта имеет более высокую пропускную способность памяти. Я не знаю, какие выводы из этого сделать.

Name               Quadro FX 580     GeForce 8600 GT 
CUDA Cores                    32                  32
Core clock (MHz)             450                 540   
Memory clock (MHz)           400                 700
Memory BW (GB/s)              25.6                22.4  
Shader Clock (MHz)          ????                1180  

1 Ответ

2 голосов
/ 14 декабря 2011

Просто хочу предоставить вам несколько указателей, которые могут быть возможными источниками ошибок.Во-первых, используйте cudaEvents для определения времени вашего кода, а не cuda profiler, поскольку cudaEvents более точен.Во-вторых, пожалуйста, проверьте, что измеряет автор;он только говорит о времени вычислений, или он также рассматривает время для передачи данных в и из графического процессора.Вы измеряете одно и то же время?

Во-вторых, архитектура cuda меняется довольно быстро.Например, для карт с cc 1.x предлагается использовать общую память для повышения производительности;однако для карт с cc 2.x имеется кэш-память L1 с каждым мультипроцессором, что обеспечивает быстрый доступ к глобальной памяти.Итак, вы также можете сравнить архитектуру двух карт и их вычислительные возможности.

...