cuda快速入门代码
时间: 2024-01-26 19:00:28 浏览: 76
CUDA(Compute Unified Device Architecture)是NVIDIA推出的并行计算平台和API模型,用于利用GPU的计算能力。以下是一个CUDA快速入门代码的示例:
代码示例:
#include <cuda_runtime.h>
#include <stdio.h>
// CUDA核函数,执行在GPU上
__global__ void cudaHelloWorld()
{
printf("Hello World from GPU!\n");
}
int main()
{
// 调用CUDA异步执行的配置
cudaStream_t stream;
cudaStreamCreate(&stream);
// 定义核函数的执行配置
dim3 block(1, 1);
dim3 grid(1, 1);
// 在GPU上调用核函数
cudaHelloWorld<<<grid, block, 0, stream>>>();
// 同步GPU,等待核函数执行完成
cudaStreamSynchronize(stream);
// 销毁CUDA流
cudaStreamDestroy(stream);
// 输出CPU上的信息
printf("Hello World from CPU!\n");
return 0;
}
该示例代码中,我们在主函数中调用CUDA核函数cudaHelloWorld,并在GPU上并行执行。核函数使用__global__修饰符标记,表明它将在GPU上执行。在主函数中,我们首先使用cudaStreamCreate函数创建一个CUDA流,用于异步执行核函数。然后,我们定义了核函数的执行配置,即指定了需要启动的线程块数量和线程块中的线程数量。在调用核函数时,我们传递了执行配置、流对象和其他参数。接着,我们使用cudaStreamSynchronize函数来等待GPU上的核函数执行完成,以确保输出的正确顺序。最后,我们使用printf函数输出来自CPU和GPU的信息。
这个示例代码展示了如何使用CUDA快速入门,并在GPU上进行并行计算。通过学习和掌握CUDA编程,开发者可以充分利用GPU的并行计算能力,加速各种科学计算和计算密集型任务的执行。
阅读全文