Hello world from cuda!

对于一般的编程语言(C++、python等),输出“Hello world”实质上是由CPU进行相关计算以及处理的,那么对于现代GPU,拥有成千上万的cuda核心进行并行计算以及并行处理的能力,如何使用GPU的cuda核心进行计算呢?

对于一门编程语言,最开始学习的语法就是”Hello World”

那么,对于cuda编程,如何输出一份来自GPU的hello world呢

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <cuda_runtime.h>

__global__ void printfromGPU(){
printf("Hello World from GPU!");
}

int main(){

printf("Hello World from CPU!");

printfromGPU<<<3, 9>>>();//代表启动三个block,每一个block启动9个thread

return 0;
}

输出效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Hello World from CPU
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA
Hello World form CUDA