☰
CUDA[#1]
2026/10/28 18:51:41 网站建设 项目流程

2026.9.14

1.什么是CUDA

来自维基百科

CUDA(Compute Unified Devices Architecture,统一计算架构)是由英伟达(NVIDIA)所推出的一个并行计算平台,是该公司对于GPGPU的正式名称。透过这个技术,用户可利用NVIDIA的GPU进行图像处理之外的运算。

2.CPU、GPU协同工作

· 主机 (Host):指的是你电脑里的CPU 以及它直接管理的内存(通常叫主存/内存条)。它是整个电脑的“指挥官”,负责跑操作系统、处理逻辑、调度任务。
· 设备 (Device):指的是你插在主板上的 GPU(显卡)。它相当于一个“超级计算打工仔”,专门负责处理海量并行计算任务。

处理流程:

  1. 数据拷贝:CPU内存→GPU内存
  2. 加载GPU程序并执行
  3. 结果拷贝:GPU内存→CPU内存

3.GPU内核函数

__global__关键字声明内核函数,功能:

  • 在设备(device 也就是GPU)上运行
  • 被主机(host)代码调用(也可被其它设备代码调用)

设备代码 即运行在GPU上的代码

nvcc 编译器:它就像一个交通警察。它会把你的代码拆成两部分:

  • 带global的代码给 NVIDIA 自己的编译器处理,最终变成 GPU 能懂的机器码。
  • 像 main() 这种普通的 C++ 代码,交给普通的编译器(比如 gcc、cl.exe)处理,变成 CPU(主机) 能懂的代码。

4.CUDA内存管理

CPU与GPU内存是分离的。Device指针指向GPU内存,Host指针指向CPU内存。

  • 通常传递给CPU/GPU各自的代码
  • 通常无法在另一个地方解引用

总结:谁的指针给谁用(物理上内存是分离的)

  • CUDA有API来处理设备内存

API(应用程序接口),让 CPU 可以通过这些“专属通道”去指挥 GPU 的内存。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询