CUDA и STL вектор - PullRequest
       21

CUDA и STL вектор

1 голос
/ 16 августа 2010

Только что узнав, что многие функции cpp (включая векторный класс stl) не работают в файлах cu. Даже при использовании их в коде хоста.

Поскольку я должен использовать класс C ++, который использует STL, я не могу скомпилировать мой файл CU, который вызывает ядро. (Я не использую какие-либо функции STL в файле CU, но я думаю, что проблема заключается в включении.)

Я пытался построить это с помощью cmake с

cuda_add_executable(
Blah
Blah.cu
BlahKernel.cu
HostCodeWithVector.cpp
)

что явно не работает. Теперь возникает вопрос, возможно ли построить HostCodeWithVector.cpp с gcc вместо nvcc и связать его как-нибудь ..?

1 Ответ

2 голосов
/ 16 августа 2010

, поскольку __host__ - это то, что работает на вашем процессоре, вы можете скомпилировать эту часть с помощью любого компилятора (MSVC, gcc) и затем связать его с результатом nvcc.Таким образом, вы должны просто оставить взаимодействие GPU в файлах CU, а все остальное поместить в CPP.

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