Самая простая обертка CUDA для новичков

Я хочу начать изучать, как программировать в CUDA, не только языке, но и проектировании программы - вещах как - от того, что я услышал - запись ядер без условных выражений так, чтобы все потоки выполнили те же инструкции и наверху существует минимальная синхронизация.

И от того, что я услышал, обертка Python намного более интуитивна, чтобы использовать и кодировать с, чем библиотека C.

Так предположение, что языки я уже знаю/, знает, не барьер, в каком языке лучше начать изучать CUDA?

Какой дает Вам лучшую идею DO's и DONTs в CUDA и самой легкой кривой обучения?

6
задан Peter O. 18 March 2012 в 10:42
поделиться

2 ответа

Учитывая, что языки не являются препятствием, я бы сказал, что использование C / C ++ оставит больше ресурсов, которые могут вам помочь. Есть и другие потенциальные ловушки, но если вы взглянете на CUDA Best Practices Guide (прилагается к инструментарию CUDA на веб-сайте NVIDIA ), то вы будете на правильном пути.

Вы также можете рассмотреть проект с открытым исходным кодом « Thrust », который представляет собой библиотеку шаблонов в стиле STL / Boost, созданную на основе CUDA C ++. Во многих случаях он работает хорошо, и вы можете просто вызывать более сложные ядра, когда узнаете больше.

4
ответ дан 17 December 2019 в 04:47
поделиться

Вы можете пройти через Руководство по лучшей практике , а также через шаблон THRUST. Для переплета Python, посмотрите на Copperhead, о котором шла речь в этих слайдах Майкла Гарланда

1
ответ дан 17 December 2019 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: