2012-01-19 3 views
1

Возможно ли запустить несколько ядер на нескольких графических процессорах одновременно из одного потока в cuda 4.0?Несколько ядер в cuda 4.0

+0

Да, вы можете. См. Http://stackoverflow.com/a/5097994/789683 – flipchart

+1

Возможный дубликат [одновременного выполнения ядра] (http://stackoverflow.com/questions/5097855/concurrent-kernel-execution) – talonmies

+1

Я думаю, что вопрос немного отличается в том, что вопрос также включает несколько графических процессоров в одном потоке. Конечно, оба эти вопроса были обработаны в stackoverflow отдельно. –

ответ

2

Чтобы использовать несколько графических процессоров из одного потока, вы можете переключаться между контекстами cuda (каждый из которых связан с GPU) и асинхронно запускать ядра. Фактически вы будете запускать несколько ядер на нескольких GPU таким образом.

Однако, если у вас есть карты с вычислительной способностью> 2.0, вы также можете запускать ядра одновременно, как показано в комментариях выше. Вы можете найти сообщение о concurrent kernel execution over here.

Конечно, вы можете использовать оба варианта, если у вас есть несколько карт с вычислительной способностью> = 2.0.

0

есть. Если есть 2 устройства, вы можете запустить kernel1 < < < >>> at device0 и kernel2 < < < >>> на устройстве1. существует опция setdevice(), с помощью которой вы выбираете устройство, на котором будет выполняться ядро. google it, он находится в библиотеке cuda 4.0

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