Как я могу скомпилировать код CUDA, а затем связать его с проектом C ++?

Мне нужна помощь, чтобы начать работу с проектом с использованием CUDA. Моя цель - создать проект, который я могу скомпилировать в собственном компиляторе g ++, но использует код CUDA. Я понимаю, что мне нужно скомпилировать свой код CUDA в компиляторе nvcc, но, насколько я понимаю, я могу каким-то образом скомпилировать код CUDA в файл cubin или файл ptx.

Вот мои вопросы:

  1. Как использовать nvcc для компиляции в файл cubin или файл ptx? Разве мне не нужен -c или что-то в этом роде?
  2. Какой тип файла я хочу использовать?
  3. Какие команды g ++ нужны для правильной компиляции и связывания проекта вместе?

Предположим следующее:

  1. У меня есть файл с именем «main.cpp», в котором есть основная функция и включающий cuda.h.
  2. У меня есть другой файл cudaFunc.cu, в котором есть код CUDA. Скажем, например, что я хочу добавить два целочисленных массива, которые существуют в main.cpp.
47
задан Shadow 10 November 2015 в 00:57
поделиться