“CUDA”版本间的差异
来自iCenter Wiki
第12行: | 第12行: | ||
#include <cuda.h> | #include <cuda.h> | ||
__global__ void my_kernel() { | __global__ void my_kernel() { | ||
− | + | printf(“Hello World from GPU!\n”); | |
} | } | ||
int main() | int main() | ||
{ | { | ||
− | + | printf("Hello World from CPU!\n"); | |
− | + | my_kernel<<<1,1>>>(); | |
− | + | cudaDeviceSynchronize() | |
− | + | return 0; | |
} | } | ||
2017年4月19日 (三) 12:19的版本
CUDA(Compute Unified Device Architecture,统一计算架构)
异构平行计算系统(heterogeneous parallel computing systems)
latency devices (CPU cores)
throughput devices (GPU cores)
单进程多数据(single process and mutiple data, SPMD) 模型
#include <stdio.h> #include <cuda.h> __global__ void my_kernel() { printf(“Hello World from GPU!\n”); } int main() { printf("Hello World from CPU!\n"); my_kernel<<<1,1>>>(); cudaDeviceSynchronize() return 0; }
编译输出
$ nvcc hello_world.cu $ ./a.out Hello World from CPU! Hello World from GPU!