Несколько графических процессоров в CUDA 3.2 и проблемы с Cuda 4.0 - PullRequest
1 голос
/ 13 августа 2011

Я новичок в нескольких графических процессорах.Я написал код для одного графического процессора и хочу еще больше ускорить использование нескольких графических процессоров.Я работаю с двумя GTX 470 с MS VS 2008 и cuda toolkit 4.0

. У меня две проблемы.

Первая проблема - мой код как-то не работает с правилами сборки 4.0 и работаетштраф за 3.2 правила сборки.Также пример SDK для multiGPU не основан на VS2008, выдающем ошибку

ошибка C3861: 'cudaDeviceReset': идентификатор не найден

Моя вторая проблема, если у меня естьдля работы с 3.2, затем, согласно документации, потоки должны запускаться отдельно, и должны выполняться отдельные выделения и т. д. Какая библиотека является самой простой для запуска потоков для нескольких графических процессоров, и можете ли вы привести пример для моей настройки доступа к нескольким графическим процессорам?.

1 Ответ

2 голосов
/ 13 августа 2011

Ответ на первый вопрос заключается в том, что вы явно связываете старую версию библиотеки времени выполнения CUDA. cudaDeviceReset - это новое дополнение к API, представленное в CUDA 4.0. Поэтому дважды проверьте правила сборки и убедитесь, что вы действительно указываете компоновщик на инструментарий CUDA 4.0, а не на более раннюю версию

Вторая часть вашего вопроса звучит как вопрос "хай плз, дайте мне код", и это не совсем то, для чего это место. Однако я дам вам ссылку на GPUWorker (код, в настоящее время доступный здесь ), который представляет собой многопользовательский фреймворк с поддержкой потоков, изначально входивший в пакет молекулярной динамики HOOMD. Он должен дать вам несколько советов о том, как сделать многопоточный, многопользовательский код, даже если GPUWorker окажется не соответствующим вашим потребностям.

...