nvcc
เคยมี-deviceemu
ตัวเลือกกลับมาใน CUDA Toolkit 3.0
ฉันดาวน์โหลด CUDA Toolkit 3.0 ติดตั้งและพยายามเรียกใช้โปรแกรมง่ายๆ:
#include <stdio.h>
__global__ void helloWorld() {
printf("Hello world! I am %d (Warp %d) from %d.\n",
threadIdx.x, threadIdx.x / warpSize, blockIdx.x);
}
int main() {
int blocks, threads;
scanf("%d%d", &blocks, &threads);
helloWorld<<<blocks, threads>>>();
cudaDeviceSynchronize();
return 0;
}
โปรดทราบว่าใน CUDA Toolkit 3.0 nvcc
อยู่ในไฟล์/usr/local/cuda/bin/
.
ปรากฎว่าฉันมีปัญหาในการรวบรวม:
NOTE: device emulation mode is deprecated in this release
and will be removed in a future release.
/usr/include/i386-linux-gnu/bits/byteswap.h(47): error: identifier "__builtin_bswap32" is undefined
/usr/include/i386-linux-gnu/bits/byteswap.h(111): error: identifier "__builtin_bswap64" is undefined
/home/user/Downloads/helloworld.cu(12): error: identifier "cudaDeviceSynchronize" is undefined
3 errors detected in the compilation of "/tmp/tmpxft_000011c2_00000000-4_helloworld.cpp1.ii".
ฉันพบบนอินเทอร์เน็ตว่าถ้าฉันใช้gcc-4.2
หรือใช้แบบโบราณแทนgcc-4.9.2
ข้อผิดพลาดอาจหายไป ฉันยอมแพ้.