HelloCUDA-GPU Computing Basics-1

Date:

介绍

图形处理单元(Graphics Processing Unit,GPU)是一种专门用于加速计算机图形和图像处理的电子器件。图形处理单元有专门的处理核心,可以用来加速计算过程。尽管 GPU 最初是为处理图像和视觉数据而设计的,但现在它们正被用于增强其他计算流程,如科学计算和机器学习。这是因为 GPU 可以有效地进行大规模分布式计算。 面向 GPU 编程内容可谓浩如烟海,且难度令人生畏。在接下来的内容中我们希望能揭开其面纱,引导和帮助开发者找到适合其本人的加速计算解决方案。

CPU 与 GPU 对比

CPU 是执行代码最常用的处理器类型。cpu 有一个或多个串行处理器,每个串行处理器从堆栈中获取单个指令并按顺序执行它们。GPU 是一种通常用于视频和图像渲染的协处理器,但在机器学习和数据科学领域也非常受欢迎。GPU 具有一个或多个流式多处理器,可接收指令数组并并行执行。 undefined

并行模式

GPU 的优势在于并行计算或者说对整体中的部分并行计算。并行处理的主要实现架构包含四种:

  • 单处理器,单数据 (SISD)
  • 单处理器,多数据 (SIMD)
  • 多处理器,单数据 (MISD)
  • 多处理器,多数据 (MIMD)

多数 CPU 是多核心处理器,采用 MIMD 的架构,与之相反的 GPU 采用 SIMD 架构。这种差异使得 GPU 非常适合高度并行计算,即在海量数据上执行同一处理操作。

×

微信扫码分享