GPU和CPU的区别是什么,渲染是否是并行计算的?

CPU和GPU有什么区别 CPU和GPU是计算机中两种核心处理器,主要区别在于设计目的和架构。CPU擅长处理复杂逻辑和串行任务,核心数量少但单核性能强;GPU则专为大规模并行计算设计,具有成百上千个核心,适合图形渲染和AI计算等重复性任务。现代计算机通常采用CPU负责系统控制和逻辑处理,GPU加速并行计算的协同工作模式。两者在核心数、线程能力、适用场景等方面各有侧重,共同提升计算性能。 阅读详情

 

一:什么是GPU

很久以前,大概2000年那时候,显卡还被叫做图形加速卡。一般叫做加速卡的都不是什么核心组件,和现在苹果使用的M7协处理器地位差不多。这种东西就是有了更好,没有也不是不行,只要有个基本的图形输出就可以接显示器了。在那之前,只有一些高端工作站和家用游戏机上才能见到这种单独的图形处理器。后来随着PC的普及,游戏的发展和Windows这样的市场霸主出现,简化了图形硬件厂商的工作量,图形处理器,或者说显卡才逐渐普及起来。

GPU有非常多的厂商都生产,和CPU一样,生产的厂商比较多,但大家熟悉的却只有3个,以至于大家以为GPU只有AMD、NVIDIA、Intel3个生产厂商。

二:GPU与CPU的区别

想要理解GPU与CPU的区别,需要先明白GPU被设计用来做什么。现代的GPU功能涵盖了图形显示的方方面面,我们只取一个最简单的方向作为例子。 

大家可能都见过上面这张图,这是老版本Direct X带的一项测试,就是一个旋转的立方体。显示出一个这样的立方体要经过好多步骤,我们先考虑简单的,想象一下他是个线框,没有侧面的“X”图像。再简化一点,连线都没有,就是八个点(立方体有八个顶点的)。那么问题就简化成如何让这八个点转起来。首先,你在创造这个立方体的时候,肯定有八个顶点的坐标,坐标都是用向量表示的,因而至少也是个三维向量。然后“旋转”这个变换,在线性代数里面是用一个矩阵来表示的。向量旋转,是用向量乘以这个矩阵。把这八个点转一下,就是进行八次向量与矩阵的乘法而已。这种计算并不复杂,拆开来看无非就是几次乘积加一起,就是计算量比较大。八个点就要算八次,2000个点就要算2000次。这就是GPU工作的一部分,顶点变换,这也是最简单的一部分。剩下还有一大堆比这更麻烦的就不说了。总而言之,CPU和GPU因为最初用来处理的任务就不同,所以设计上有不小的区别。它们分别针对了两种不同的应用场景。CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。

于是CPU和GPU就呈现出非常不同的架构(示意图):

CPU与GPU区别大揭秘

图片来自nVidia CUDA文档。其中绿色的是计算单元,橙红色的是存储单元,橙黄色的是控制单元。

GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache。而CPU不仅被Cache占据了大量空间,而且还有有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU很小的一部分。

而GPU的工作大部分就是这样,计算量大,但没什么技术含量,而且要重复很多很多次。就像你有个工作需要算几亿次一百以内加减乘除一样,最好的办法就是雇上几十个小学生一起算,一人算一部分,反正这些计算也没什么技术含量,纯粹体力活而已。而CPU就像老教授,积分微分都会算,就是工资高,一个老教授资顶二十个小学生,你要是富士康你雇哪个?GPU就是这样,用很多简单的计算单元去完成大量的计算任务,纯粹的人海战术。这种策略基于一个前提,就是小学生A和小学生B的工作没有什么依赖性,是互相独立的。很多涉及到大量计算的问题基本都有这种特性,比如你说的破解密码,挖矿和很多图形学的计算。这些计算可以分解为多个相同的简单小任务,每个任务就可以分给一个小学生去做。但还有一些任务涉及到“流”的问题。比如你去相亲,双方看着顺眼才能继续发展。总不能你这边还没见面呢,那边找人把证都给领了。这种比较复杂的问题都是CPU来做的。

而某些任务和GPU最初用来解决的问题比较相似,所以用GPU来算了。GPU的运算速度取决于雇了多少小学生,CPU的运算速度取决于请了多么厉害的教授。教授处理复杂任务的能力是碾压小学生的,但是对于没那么复杂的任务,还是顶不住人多。当然现在的GPU也能做一些稍微复杂的工作了,相当于升级成初中生高中生的水平。但还需要CPU来把数据喂到嘴边才能开始干活,究竟还是靠CPU来管的。

三:并行计算

首先我们说一下并行计算的概念,它是一种类型的计算,它的许多计算或执行过程是同时进行的。将大问题可以分成较小的问题,然后可以同时解决。可以同CPU或主机进行协同处理,拥有自己的内存,甚至可以同时开启1000个线程。

采用GPU进行计算时与CPU主要进行以下交互:

 CPU与GPU之间的数据交换,在GPU上进行数据交换

先说明一下,一般来说同一时刻一个CPU或GPU计算核心上(就是我们通常所说的“核”)只能够进行一个运算,在超线程技术中,一个计算核心在同一时刻可能进行多个计算(比如对于双核四线程的CPU,在不发生资源冲突的情况下,每个计算核心可能同时进行两个计算),但超线程通常只是使逻辑计算核心翻倍。我们平时看到自己使用的CPU可以同时运行几十个程序,实际上,从微观角度来说,这几十个程序在一定程度上仍然是串行的,比如在四核四线程CPU上,同一时刻只能够进行4个运算,这几十个程序便只能在四个计算核心上轮换执行,只是由于切换速度很快,在宏观上表现出的就是这些程序在“同时”运行。

GPU最突出的特点就是:计算核心多。CPU的计算核心一般只有四个、八个,一般不超过两位数,而用于科学计算的GPU的计算核心可能上千个。正由于计算核心数量的巨大优势,GPU在同一时刻能够进行的计算的数量远远地把CPU比了下去。这时候,对于那些可以并行进行的计算,利用GPU的优势就能够极大地提高效率。这里解释一下任务的串行计算和并行计算。串行计算通俗来说就是先计算完一个之后再计算下一个,并行计算则是同时并行的计算若干个。比如计算实数a与向量B=[1 2 3 4]的乘积,串行计算就是先计算a*B[1],再计算a*B[2],然后计算a*B[3],最后计算a*B[4],从而得到a*B的结果,并行计算就是同时计算a*B[1]、a*B[2]、a*B[3]和a*B[4],得到a*B的结果。如果只有一个计算核心,四个计算任务是不可能并行执行的,只能够一个一个地串行计算,但如果有四个计算核心,则可以把四个独立的计算任务分到四个核上并行执行,这便是并行计算的优势所在。正因如此,GPU的计算核心多,能够进行并行计算的规模便非常大,对于一些能够通过并行计算解决的计算问题便表现出了优于CPU的性能。比如破译密码,将任务分解成可以独立执行的若干份,每一份分配在一个GPU核心上,便可以同时执行多份破译任务,从而加快破译速度。

但并行计算不是万能的,它需要一个前提:问题可以分解为能够并行执行的若干个部分。很多问题不满足这个条件,比如一个问题有两步,而第二步的计算依赖于第一步的结果,此时,这两部分便不能并行的执行,只能够串行地依次执行。实际上,我们平时的计算任务常常有复杂的依赖关系,很多重要的计算任务并不能够并行化。这是GPU的一个劣势。

关于GPU编程方面主要有以下方法:

文章来源:  https://www.renderbus.com/share/post-id-1478

 

 

 

 

 

 

芯片:CPU和GPU有什么区别? CPU更适合于处理需要复杂逻辑和高频次控制的任务,能够处理更为广泛的工作负载,但不适合大规模并行计算。GPU则擅长大规模的并行计算,尤其适用于图形渲染、机器学习和科学计算等领域。它能够在处理大量数据时提供显著的性能优势。两者在现代计算系统中往往是互补的,CPU负责执行串行逻辑和复杂决策任务,而GPU则处理大量的并行计算任务。 阅读详情

相关推荐

GPU与CPU、显卡区别

一、GPU介绍以及与显卡区别论述:百度百科-GPU GPU是显卡的处理器,称为图形处理器(Graphics Processing Unit,即GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器,它是显卡的“心脏”,与CPU类似,只不过GPU是专为执行复杂的数学和几何计算而设计的,这些计算是图形渲染所必...

CYJ2014go的博客 3万+

CPU与GPU渲染的差异有哪些?最佳3D渲染 GPU推荐

这是我们推荐的工作站级显卡,价格实惠,在设计应用中具有出色的性能。渲云支持的软件囊括D5、Unreal Engine、3ds Max、Maya、C4D、Houdini、Clarisse、keyshot、katana、Blender、NUKE、VRAY Standalone、Vred、AE渲染等,基本涵盖业内CG人会使用到的各类常规软件,目前还在不断增加ing,满足不同用户的软件差异性需求。与基于 GPU 的渲染相比,基于 CPU 的渲染的优势似乎显得苍白无力,但这最终取决于您或您的工作室的需求。

专注于3D渲染行业,分享3D渲染的经验和技巧 3869

GPU、显卡、CPU的区别与联系

简单介绍GPU、CPU的相关内容。

qq_52821436的博客 4727

一文搞懂英伟达的数据中心和消费级GPU的10点区别

以H100、A100为例,在综合算力性能方面,在FP32、FP16,INT8等常用精度算力上,要高于同代的GeForce卡,在显存的客量和显存带宽方面更是优势明显,部分精度算力,消委级卡依然也非常强劲,比如4090在FP16的算力上和A100持平。消耗相同的电,Tesla卡能释放更多的算力,比如H100,700W的功耗能提供1P的FP16算力,但是450W的4090只有330T。Tesla卡只有英伟达品牌的产品,虽然GeForce卡的芯片也是英伟达的,但是品牌众多,各个厂家用料做工不同,价格相应也不同。

BuluAI的博客 2458

AI时代,一篇雄文说清楚CPU与GPU的区别

先说说大家最熟悉的CPU,英文全称Central Processing Unit,中央处理器。但凡是个人都知道,CPU是计算机的心脏。运算器和控制器这两个核心功能,都是由CPU负责承担的。再来看看GPU。GPU是显卡的核心部件,英文全名叫Graphics Processing Unit,图形处理单元(图形处理器)。GPU并不能和显卡划等号。显卡除了GPU之外,还包括显存、VRM稳压模块、MRAM芯片、总线、风扇、外围设备接口等。。而GPU则完全不同。所以,并行计算,当然需要更多的核啊。

阿拉伯梳子的专栏 1692

告别Docker Desktop!Colima在Mac上的5分钟极速安装与配置指南(M1芯片实测)

本文详细介绍了如何在Mac(尤其是M1芯片)上快速安装和配置Colima,作为Docker Desktop的免费替代品。通过优化配置和实战指南,帮助开发者提升容器运行效率,减少资源占用,实现丝滑的开发体验。

weixin_28839601的博客 446

浅析AI大模型GPU卡

GPU,全称为图形处理器(Graphics Processing Unit),最初设计目的是加速计算机图形渲染,特别是在视频游戏和专业可视化应用中。然而,随着技术的发展,GPU因其独特的并行处理架构而成为高效数据处理的理想选择,不仅限于图形处理,还在高性能计算、大数据分析、以及人工智能等领域发挥了重要作用。架构:基于Ampere架构。出厂时间:大约在2020年推出。算力:提供约19.5 TFLOPs的FP32算力,以及更高的Tensor Flops(如TF32)。计算精度。

weixin_42779339的博客 3203

西门子【Automation Framework V1.2】AF架构:从软件栈到高效自动化项目的构建蓝图

本文深入解析西门子Automation Framework V1.2 (AF架构) 的核心价值与实施蓝图。该框架通过定义标准化的软件栈(如TIA Portal V19、STEP7、WinCC Unified)和严格的安装配置流程,将自动化项目开发从依赖个人经验的“手工作坊”模式,转变为高效、可复制的工业化模式。遵循此架构,工程师能快速构建稳定可靠的项目基础,规避环境冲突,从而专注于核心工艺与逻辑设计,大幅提升团队协作与项目交付效率。

weixin_29230059的博客 429

大模型训练为什么用A100不用4090

把他的成本打开,SXM 的成本不会高于 300,封装的及大约也需要300,中间的 Logic Die 最大颗,看上去最高贵 :) 那是 4nm 的一颗 814mm2 的 Die,TSMC 一张 12 英寸 Wafer 大致上可以制造大约 60 颗这个尺寸的 Die,Nvidia 在 Partial Good 上一向做得很好(他几乎不卖 Full Good),所以这 60 颗大致能有 50 颗可用,Nvidia 是大客户,从 TSMC 手上拿到的价格大约是 ,所以这个高贵的大约只需要300。

金戈鐡馬 6999

ubuntu18.04 显卡驱动问题 造成屏幕分辨变大 NVIDIA-SMI has failed because it couldn't communicate with ....等问题

问题1:装好了显卡驱动,cudnn,tensorflow等没问题,一直可以用。但是突然有一天不行了,终端输入:nvidia-smi 显示:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed...

梦萦飞--CV/DL/ML 2248

从代码层面分析STM32 标准库和HAL库的差异

相当于每个设置都是独立的函数。HAL库将一段代码通过宏定义的方式封装成了一个函数,每个端口的时钟都单独的定义了一个名称,标准库是一个独立的函数,通过参数传递的方式来设置每个端口的时钟。这两个版本的函数本质上操作的还是寄存器,不过HAL库操作的只是BSRR寄存器,而标准库端口置1的时候操作的是BSRR寄存器,端口清0的时候操作的是BRR寄存器。标准库设置端口模式的时候,是在if语句中判断之后直接设置的,而HAL端口模式设置时,却使用了switch语句去设置,说明在HAL库中,端口模式和标准库中发生了改变。

HXYDJ的博客 2万+

一张显卡卖5-6万?Tesla计算卡你凭什么这么贵!

想必大家都知道,显卡巨头Nvidia公司的产品可以分为三大类:科学计算卡(Tesla)、专业图形卡(Quadro)和家用显卡(Geforce)类。可是同样都是显卡,为什么Geforce卡只需要几千块,而Tesla计算卡能卖到5-6万呢? FP64双精度浮点计算能力强   对于专业卡而言,仅强调FP32单精度运算速度是不够的,毕竟进行生化模拟,比如化学分析和生物遗传学对数学精度的要求远远高...

u014522363的博客 1万+

保姆级避坑指南:用Docker在Ubuntu 22.04上部署Isaac Sim 5.1.0,搞定宇树G1仿真环境

本文提供了一份详细的保姆级避坑指南,帮助用户在Ubuntu 22.04上通过Docker部署Isaac Sim 5.1.0,并成功搭建宇树G1仿真环境。文章涵盖了环境准备、Docker与NVIDIA容器工具包的配置、Isaac Sim镜像的定制化拉取与配置,以及宇树G1仿真环境的实战调试,旨在帮助开发者高效解决部署过程中的常见问题。

weixin_33728268的博客 207

CPU渲染和GPU渲染各自特点,优势,场景使用

CPU和GPU都是现代计算机中用于渲染的两种核心处理器,它们分别在特点、速度以及质量等方面各有优势。

大剑师兰特的GIS世界 2105

PostgreSQL核心原理:数据库崩溃恢复的唯一真相详解

PostgreSQL崩溃恢复机制通过WAL日志确保数据一致性和持久性。核心流程包括:触发恢复(非正常关闭时)、读取控制文件获取检查点LSN、顺序扫描WAL日志进行Redo阶段重做已提交事务、利用MVCC标记未提交事务为ABORTED实现逻辑撤销,最后执行检查点完成恢复。该机制依赖WAL原子性、检查点锚点和无Undo的可见性模型三大支柱,保证即使系统崩溃也能恢复到逻辑一致状态。关键设计包括延迟写入、LSN顺序控制和FPW防部分写,最终通过确定性重放实现ACID特性。

数据知道的博客 2664

SAP 采购员参数及权限配置

若要控制采购员的参数缺省值或者权限,可以通过以下方式实现: 1、定义采购员缺省值(EVO) 路径:后台----物料管理---采购---环境数据---定义采购员的缺省值 点击图标,显示如下,查看参数配置ID: 查询到配置“定义采购员的缺省值”是通过ID “EVO”来配置的。进入页面建立配置: 按照需要配置新条目: 事务代码SU01进入用户配置页面,在用户“参数”页面配置前面设...

willieyuan的博客 7601

一文了解GPU并行计算CUDA

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。开发人员可以使用C语言来为CUDA™架构编写程序,所编写出的程序可以在支持CUDA™的处理器上以超高性能运行。CUDA3.0已经开始支持C++和FORTRAN。

Lion_Long的博客 1万+

国产系统(统信 UOS )漏洞修复方式

2.1 服务器版(单漏洞更新):服务器标准版:yum upgrade-minimal --cve “CVE编号”服务器 D 版:sudo apt update&&sudo apt install “受影响的软件包”1 统信 UOS 漏洞修复方式在线升级修复桌面专业版:通过以下步骤打开在线升级:控制中心–>更新–>更新设置–>打开系统更新、安全更新。安装过程中,请勾选“我已阅读并知晓”,然后点击“开始升级”。2 点击“检查更新”–“全部下载”,如果不想进行系统更新,可以选择只下载“安全更新”。

Reyn_观极 5022

CPU与GPU到底有什么区别?

除了这种工作方式之外,GPU的指令集还非常简单,不像CPU这种复杂的处理器,如果你去看CPU的编程手册就会发现,CPU负责的事情非常多:中断处理、内存管理、IO等等,这些对于GPU来说都是不存在的,可以看到GPU的定位非常简单,就是纯计算,GPU绝不是用来取代CPU的,CPU只是把一些GPU非常擅长的事情交给它,GPU仅仅是用来分担CPU工作的配角。你可以简单的将CPU理解为学识渊博的教授,什么都精通,而GPU则是一堆小学生,只会简单的算数运算,可即使教授再神通广大,也不能一秒钟内计算出500次加减法,

biyusr的专栏 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

CPU和GPU的区别是什么?

CPU是一种微处理器,用于执行程序根据操作(如算术、逻辑、控制和输入-输出)给出的指令。相反,GPU最初设计用于在电脑游戏中渲染图像。CPU强调低延迟,而GPU则强调高吞吐量。 CPU Vs GPU 内容 比较表格 定义区别 关键不同 结论 1. 比较表格 从上图中可以看出区别: CPU:注重低延迟,擅长处理穿行的指令;核心少但每个核心功能强大;并且内存消耗大等。 GPU:注重高吞吐量;擅...

土豆洋芋山药蛋的博客 9514

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

CPU和GPU的区别

CPU和GPU各有其独特的优势和应用场景。CPU适合处理需要复杂逻辑和高频次控制的任务,能够处理更为广泛的工作负载。GPU则擅长大规模的并行计算,尤其适用于图形渲染、机器学习和科学计算等领域。在实际应用中,根据具体需求选择合适的计算引擎可以显著提高计算效率和性能。版权声明:本博客内容为原创,转载请保留原文链接及作者信息。参考文章PyTorch中的CPU和GPU代码实现详解CPU 与 GPU 对比:两者有什么区别?

ning的博客 1817

cpu和gpu的区别,以及cpu和gpu中核的概念以及四种架构

在我的理解里面,GPU和cpu很类似,都是主要用来进行运算的,但是主要的区别就是两个东西的运算方向不一样,cpu主要是进行数学中的判断,加减乘除等基础运算的效率较高,而GPU更擅长对图像渲染,深度学习,物理模拟等方向的运算,所以说基本上GPU也像是CPU的另一种发展方向,但是本质都是运算单元GPU的定义:1.GPU(图形处理器单元)是一种专门设计用于处理图形和图像相关计算的处理器。它最初是为图形渲染而设计的,但随着时间的推移,GPU的用途已经扩展到包括科学计算、深度学习、数据分析等多个领域。

weixin_74994990的博客 3146

渲染前CPU和渲染中GPU的裁剪和剔除

面试被问CPU裁剪,不知道 今天先这样,明天处理 为什么在ndc归一化坐标已经包含了视锥体剔除功能的情况下 还需要视锥体裁剪? - 知乎 https://www.zhihu.com/question/304277310 Directx11教程三十七之FrustumCulling(视截体裁剪)上半节教程 - qq_29523119的博客 - 优快云博客 https://blog.csdn.ne...

qq_33744693的博客 8439

CPU与GPU并行计算联系与区别

最近在做利用GPU实现并行渲染的工作,前天同学问我CPU和GPU在多线程和并行计算方面的区别具体是什么,虽然做了几个月这方面的工作,但我一下子答却不知道从何答起,因此在这里做一下整理。 一、CPU和GPU的区别 (图片来源于网络,文字参考(侵删):https://www.renderbus.com/share/post-id-1478) CPU((Central Processing Uni...

ljytower的博客 3万+

GPU比CPU更适合并行计算

GPU比CPU更适合并行计算

mingjunlintian的博客 4188

CPU与GPU的区别

CPU(中央处理器) 和 GPU(图形处理单元)是计算机中两种非常重要的处理器,但它们在设计目的与功能、处理器架构、计算能力、能效与热量、开发工具与编程模型等方面有显著的区别。 充分考虑GPU线程和CPU线程的区别,GPU线程调度 和 CPU线程调度的区别。

qq_43572400的博客 2361
上一篇: C++命名规则
下一篇: C++ AMP 概述
Poo_Chai
博客等级 码龄9年 178粉丝 117原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值