GPU编程

您所在的位置:网站首页 gpu处理器的编程方法有哪几种 GPU编程

GPU编程

2023-10-19 08:06| 来源: 网络整理| 查看: 265

本篇结构

前言 概论 CPU简介 GPU简介 并行计算 CPU/GPU对比 适于GPU计算的场景 GPU开发环境 参考博文 一、前言

因为工作需要,需要从github上找一个CUDA的DBSCAN聚类实现,刚开始从github上获取到的代码只支持二维数据,为了适配多维数据,要对代码简单改造,这就需要了解CUDA编程模式。之前没有接触过GPU编程相关概念,甚至于没有学过c语言,加上脑袋笨重,费了好些功夫,才让CUDA DBSCAN运行起来。

为了方便自己后面回顾,所以将涉及到的知识点简单串联起来,并加以记录。

如果可以,也希望给其他朋友一些can参考(肯定是有很多不足,还望海涵)。

二、概论

由于其设计目标的不同,GPU和CPU分别针对了两种不同的应用场景。

CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。

而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。

于是CPU和GPU就呈现出非常不同的架构(图可以从CUDA官网找到https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#axzz4YFZTibzg):

三、CPU简介

CPU (Central Processing Unit) 即中央处理器,是机器的“大脑”,也是布局谋略、发号施令、控制行动的“总司令官”。

CPU的结构主要包括运算器(ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线。

CPU是基于低延时的设计,简单来说包括:计算单元、控制单元和存储单元,架构可参考下图:

CPU的特点是:

(1)CPU有强大的ALU(算术运算单元)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3