【参加CUDA线上训练营】——实验编写CUDA程序

2024-01-17 17:19:26 浏览数 (2)

1.编写第一个程序 Hello CUDA

一般在CPU中写的程序:

代码语言:javascript复制
#include <stdio.h>

void hello_from_cpu()
{
    printf("Hello World from the CPU!n");
}

int main(void)
{
    hello_from_cpu();
    return 0;
}

利用CUDA写的程序

代码语言:javascript复制
#include <stdio.h>

__global__ void hello_from_gpu()
{
    printf("Hello World from the GPU!n");
}

int main(void)
{
    hello_from_gpu<<<1, 1>>>();
    cudaDeviceSynchronize();
    return 0;
}

2.编译

写完程序之后开始编译两种编译方法

1.nvcc

代码语言:javascript复制
nvcc -arch=compute_72 -code=sm_72 hello_cuda.cu -o hello_cuda -run

2.Makefile

Makefile内容:

代码语言:javascript复制
TEST_SOURCE = hello_cuda.cu

TARGETBIN := ./hello_cuda

CC = /usr/local/cuda/bin/nvcc

$(TARGETBIN):$(TEST_SOURCE)
	$(CC)  $(TEST_SOURCE) -o $(TARGETBIN)

.PHONY:clean
clean:
	-rm -rf $(TARGETBIN)
	-rm -rf *.o

命令行输入:make 然后生成一个可执行文件 接着输入:./hello_cuda 即可运行文件

再利用nvprof来查看性能:

代码语言:javascript复制
nvprof ./hello_cuda

0 人点赞