Могу ли я использовать заголовочные файлы C ++ в части ядра кода CUDA? - PullRequest
1 голос
/ 26 марта 2010

Я хочу сравнить две строки в функции ядра. Могу ли я использовать strcomp в файле? В общем, могу ли я использовать библиотеки C ++ в своем коде CUDA?

1 Ответ

1 голос
/ 27 марта 2010

Было бы удивительно, если бы библиотеки CUDA включали версию стандартной библиотеки C ++ на стороне ядра, которая понадобилась бы для того, чтобы это работало, поскольку (как отметил Пол R в комментарии) эта и многие другие стандартные функции не особенно подходят для ускорения GPU.

Согласно правилам языка CUDA, с устройства могут вызываться только функции __device__. Такие функции, как strcmp, не объявлены как __device__ в стандартной библиотеке C ++, поэтому, если язык CUDA не включает их в качестве расширений - и не делает этого, поскольку Руководство по программированию CUDA не включает в себя какую-либо документацию по ним - - тогда они не могут быть использованы в ядрах.

Что случилось, когда вы попробовали это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...