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

简介: 实验编写CUDA程序

1.编写第一个程序 Hello CUDA

一般在CPU中写的程序:

#include <stdio.h>

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

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

利用CUDA写的程序

#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

nvcc -arch=compute_72 -code=sm_72 hello_cuda.cu -o hello_cuda -run

2.Makefile

Makefile内容:

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来查看性能:

nvprof ./hello_cuda

在这里插入图片描述

目录
相关文章
|
并行计算 计算机视觉 异构计算
【CUDA学习笔记】第三篇:CUDA C并行化编程【下半部分】(附案例代码下载方式)(二)
【CUDA学习笔记】第三篇:CUDA C并行化编程【下半部分】(附案例代码下载方式)(二)
162 0
【CUDA学习笔记】第三篇:CUDA C并行化编程【下半部分】(附案例代码下载方式)(二)
|
缓存 并行计算 API
【CUDA学习笔记】第三篇:CUDA C并行化编程【下半部分】(附案例代码下载方式)(一)
【CUDA学习笔记】第三篇:CUDA C并行化编程【下半部分】(附案例代码下载方式)(一)
147 0
|
并行计算 调度 异构计算
|
缓存 并行计算 芯片
|
并行计算
一个研究将 C 程序移植到 CUDA C 并优化的案例【读书笔记】
一个研究将 C 程序移植到 CUDA C 并优化的案例【读书笔记】
118 0
一个研究将 C 程序移植到 CUDA C 并优化的案例【读书笔记】
|
并行计算 异构计算
|
存储 并行计算 调度
|
存储 缓存 并行计算
|
并行计算 异构计算 Windows
|
缓存 并行计算 API