一、环境配置与安装
- Linux下安装请参考Ubuntu12.04配置NVIDIA cuda5.5经验帖
- Windows下安装请参考CUDA在Windows的安装和使用
我是在Windows下安装的CUDA,使用Visual Studio 2013编程。安装过程是只用点确定的傻瓜式安装,并且会自动给你添加环境变量。安装完成后,Visual Studio在新建项目的时候会多出来一个CUDA的工程选型,如下图所示:
 建立工程的时候,编译器会自动生成一个模板供我们参考。
二、GPU的硬件结构
为了更好地编写CUDA程序,我们必须先了解我们的显卡硬件信息,不同的显卡(GPU)会有不同的硬件特性,如果编程不恰当,会直接导致CUDA程序无法在不同型号的显卡上通用!
先集中介绍下CUDA中的常用专业名词:
| 英 | 简写 | 中 |
|---|---|---|
| Stream Processor | SP | 流处理器 |
| Stream MultiProcessor | SM | 流处理器组 |
| Thread | 线程 | |
| Block | 线程块 | |
| Grid | 线程网格 | |
| Warp | 线程束 | |
| shared memory | 共享内存 | |
| kernel function | 核函数 |
显卡结构方面推荐大家去看Rachel-Zhang的CUDA系列学习(一),里面做了非常详细的介绍,这里我借用CUDA_C_Programming_Guide中的两张图做简要说明。
首先简单说下显卡的硬件结构,一块显卡的PCB上主要有 核心芯片 和 核心外的显存,前者相当于计算机中的CPU,后者相当于内存,详细参数可以通过GPU-Z或者在techpowerup上查看,下图就是显卡的结构,决定显卡计算能力的就是红框中的GPU核心芯片。

本文是CUDA学习笔记的第一部分,主要介绍了CUDA的环境配置与安装,特别是Windows下使用Visual Studio 2013与CUDA的配合。接着详细讲解了GPU的硬件结构,包括SM(Stream MultiProcessor)和SP(Stream Processor)的概念。此外,还阐述了CUDA的软件结构,如线程、线程块和线程网格的概念,并强调了核函数在并行计算中的作用。最后,讨论了如何通过代码获取GPU的硬件参数,以确保程序的兼容性。
最低0.47元/天 解锁文章
992

被折叠的 条评论
为什么被折叠?



