У меня есть следующие файлы:Visual Studio .CU файл показывает синтаксическую ошибку, но успешно компилируется
// Main.cpp
#include "kernel_util.cuh"
int main()
{
call_kernel();
}
// kernel_util.cuh
#ifndef KERNEL_UTIL
#define KERNEL_UTIL
#include <cuda_runtime.h>
void call_kernel();
#endif
// kernel_util.cu
#include "kernel_util.cuh"
#include "kernel.curnel"
#define thread 16
void call_kernel() {
dim3 blocks((width + thread - 1)/thread, (height + thread - 1)/thread);
dim3 threads(thread, thread);
kernel<<<blocks, threads>>>();
}
// kernel.curnel
#ifndef KERNEL
#define KERNEL
#include <cuda_runtime.h>
__global__ void kernel() {
}
#endif
у меня есть Visual Studio 2010 с 64 битным компилятором и CUDA 5.0 инструментарием установлен. Над код успешно компилируется, но линия
kernel<<<blocks, threads>>>();
третий <
дает «ожидается выражение» ошибка, но код компилируется без проблем и достигает функцию ядра.
свойства конфигурации:
- каст тип элемента файл C/C++ компилятор
- куб элемент типа файла CUDA C/C++
- CuH Тип элемента файла не участвует в сборке
- вещь curnel файл тип Не участвует в сборке
Я предполагаю, что проблема обнаруживается в Intellisense? –
что вы подразумеваете под этим. Вы можете быть более конкретным?? –
Где вы узнали об ошибке? Очевидно, что во время компиляции, как вы сказали, код компилируется чисто. Таким образом, единственной другой областью, где могла возникнуть ошибка, была бы проверка синтаксиса фона в VS, иначе Intellisense. –