Стандартное соглашение, похоже, должно дать исходным кодам CUDA файлы расширения .cu
, чтобы отличить их от файлов C с расширением .c
. Какое соответствующее соглашение для файлов заголовков, специфичных для CUDA? Есть один?
Исходные файлы CUDA получают расширение .cu. Что получают файлы заголовков?
Ответ 1
Некоторые люди (включая CUDA SDK) используют .cuh
для файлов заголовков CUDA, и если вы включаете код устройства в заголовок, возможно, это может помочь. Однако на самом деле нет специального значения, связанного с расширением файла заголовка (в отличие от исходного файла, где он определяет, какой компилятор использовать), поэтому лично я придерживаюсь .h
.
Ответ 2
Нет - просто используйте .h
для файлов заголовков. Исходные файлы CUDA имеют различный суффикс, чтобы упростить работу с тем, чтобы различные исходные файлы в сборке компилировались с помощью правильного компилятора (думать о правилах makefile).