GPU是什么GPU英文全称Graphic Processing Unit中文翻译为“图形处理器”或“图形处理单元”。GPU有时也称为视觉处理单元visual processing unit简称VPU它是一个专门应用于3D或2D图形渲染的微处理器。GPU可广泛应用于GPU嵌入式系统、移动电话、个人电脑、工作站和游戏机。GPU在计算机图形处理方面表现优异其高度并行的结构使它相较于一般的CUP处理器更善于处理一系列复杂的运算。在个人电脑上图形处理器往往集成于显卡或者主板。NVIDIA公司于1999年首次定义了GPU 这一概念。GPU使显卡减少了对CPU的依赖并分担了部分原本是由CPU所担当的工作尤其是在进行3D图形处理时功效更加明显。GPU所采用的内核技术有硬件座标转换与光源、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等。目前超过90的电脑台式机和笔记本电脑已集成图形处理器但是集成GPU通常远不如专门的独立显卡GPU功能强大。那么GPU是如何诞生的呢它的工作原理如何近年来GPU的发展有什么新技术本文将为您逐一进行解读。NVIDIA 一款显卡上的GPU。GPU工作原理电脑显卡的处理器称为图形处理单元GPU它对于显卡的功能就相当于CPU对于整台电脑但是GPU的设计初衷是为了处理图形渲染所需要的复杂的数学和几何运算。一些高速的GPU往往包含比CPU更多的晶体管而且GPU的运行会产生大量的热量因而它们一般都安装有必需的散热片或者散热风扇。Intel 一款显卡散热器下的GPU。简单讲GPU就是能够从硬件上支持TLTransform and Lighting多边形转换与光源处理的显示芯片因为TL是3D渲染中的一个重要部分其作用是计算多边形的3D位置和处理动态光线效果也可以称为“几何处理”。一个好的TL单元可以提供细致的3D物体和高级的光线特效只大多数PC中TL 的大部分运算是交由CPU处理的这也就是所谓的软件TL由于CPU的任务繁多除了TL之外还要做内存管理、输入
响应等非3D图形处理工作因此在实际运算的时候性能会大打折扣常常出现显卡等待CPU数据的情况其运算速度远跟不上今天复杂三维游戏的要求。即使CPU的工作频率超过1GHz或更高对它的帮助也不大由于这是PC本身设计造成的问题与CPU的速度无太大关系。数字模拟转换器DAC 数字模拟转换器DAC英文全称为Digital to Analog Converter电脑对声音这种信号不能直接处理先把它转化成电脑能识别的数字信号就要用到声卡中的DAC数字/模拟转换它把声音信号转换成数字信号要分两步进行采样和转换。即数模转换器一种将数字信号转换成模拟信号的装置。DAC的位数越高信号失真就越小。图像也更清晰稳定。D/A转换器基本上由4个部分组成即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器模数转换器即A/D转换器简称ADC它是把连续的模拟信号转变为离散的数字信号的器件最常见的数模转换器是将并行二进制的数字量转换为直流电压或直流电流它常用作过程控制计算机系统的输出通道与执行器相连实现对生产过程的自动控制。数模转换器电路还用在利用反馈技术的模数转换器设计中。数模转换包括并行数模转换和串行数模转换两种转换方式。GPU是显示卡的“大脑”它决定了该显卡的档次和大部分性能同时也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像和特效时主要依赖CPU的处理能力称为“软加速”。3D显示芯片是将三维图像和特效处理功能集中在显示芯片内也即所谓的“硬件加速”功能。除了它的运算处理能力GPU往往应用一些特殊程序来帮助它分析和利用数据。ATI已被INTEL公司收购和NVIDIA是世界上生产GPU的最大厂商这两家公司都开发了各自的GPU性能提升技术以提高图像处理能力它们大多采用以下技术1.
中文翻译英文转换器
全屏抗锯齿FSAA它使三维立体图像的边缘更加平滑2. 各向异性过滤AF:使图像看起来更加清晰两家公司还运用了不同的技术来提高图像彩、阴影、纹理和图案。由于GPU创建图像的功能它需要一个配套设备来存储信息和已完成的图像随机存储存取器RAM就是用于实现这一功能存储每一个像素包括它在屏幕中的颜、位置等等。随机存储存取器的一部分可以作为帧缓冲器用于临时存储已经完成的图像直到它真正呈现出来。特别的是随机存储存取器在调整运转的情况下依然可以实现双向传输系统在从中读取数据的同时也可以写入数据。随机存储存取器RAM直接与数字模拟转换器DAC相连它将系统所提供的数字信号转换为显示器可以识别的模拟信号。有些显卡拥有多重数模转换器可以用来增加其表现功能和实现多显示器输出。既然已经知道了GPU的工作原理那GPU都有哪些类别呢不同类型的GPU有性能上有什么差别下一节将会为您作出解读。GPU的分类1.独立显卡处理器效能最高的一类绘图处理器是通过PCI-Express、PCI或AGP等扩展槽界面与主板连接的而通常它们可以相对容易地被取代或升级假设主板能支持升级。现在仍然有少数显卡采用带宽有限的PCI插槽作连接但它们通常只会在主板没有提供PCI-Express和AGP插槽的情况下才会使用。在现今的定义里独立绘图处理器不一定需要是可以被移除的也不一定要直接与主板连接。所谓的“专用”即是指独立显卡或称专用显卡内的RAM只会被该卡专用而不是指显卡是否可从主板上独立移除。基于体积和重量的限制供笔记本电脑使用的独立绘图处理器通常会通过非标准或独特的接口作连接。然而由于逻辑接口相同这些端口仍会被视为PCI-Express或AGP即使它们在物理上是不可与其
他显卡互换的。一些特别的技术如NVIDIA的SLI和ATI的CrossFire允许多个绘图处理器共同处理一个单一的图像输出可令电脑的图像处理能力增加。2.集成绘图处理器集成绘图处理器或称内置显示内核是设在主板上的绘图处理器运作时会借用电脑内部分的系统存储器而没有自己独立的图形存储器。装设集成显示的个人电脑约占总出货量的90相比起使用独立显卡的方案这种方案较为便宜但效能相对较低。从前集成绘图处理器往往会被认为是不适合于运行3D游戏或精密的图形型运算。然而今天的集成绘图显示方案如Intel GMA X3000Intel G965 芯片组、AMD的Radeon HD 4200AMD 785G 芯片组和NVIDIA的GeForce 8200NVIDIA nForce 730a 芯片组已有能力处理对系统需求不是太高的3D图像。因为较旧的集成图形处理器组缺乏如硬件TL等功能只有较新型号才会包含。集成绘图处理器的效能较低其中一个原因是由于内置显示内核的运算速度较低所致。同时图形处理器在运作时会消耗一定数量的存储器但自己本身却没有独立的绘图存储器而要与CPU共同分享原本已经缓慢的系统存储器。可是系统存储器的速度比独立绘图存储器来得慢如系统存储器的传送速度可能是2 Gb/s至12.8 Gb/s左右独立绘图存储器则可能至少有10 Gb/s甚至超过100 GB/s以上取决于型号而定。这不单令集成绘图处理器的效能降低甚至减慢整台电脑速度。另外现时一些集成绘图主板往往在包含集成绘图处理器的同时提供额外的显卡扩展槽以方便日后升级。知道了GUP的主要工作原理和分类那么你知道GPU在近些年来都有哪些产生重要影响的新技术吗有人提出GPU将可能在高性能计算方面超越传统的CPU真的是这样吗要了解这些信息请阅读下一节。GPU的最新技术十几年前显卡还被称为“显示适配器”。显卡除了桌面显示外顶多也就做个2D加速。而随着游戏产业的发展特别是3D游戏产业显示核心的发展也被带动了起来无论是显
卡的功能还是其重要性方面都得到了空前的提升。1. TL解放了CPU TL 硬件级别
几何与光照转换引擎NVIDIA率先将硬件TL整合到显示核中。几何光照转换原先由CPU负责或者由另一个独立处理机处理例如一些旧式工作站显视卡。较强劲的3dfx Voodoo2 和Rendition Verite显示核心已整合了几何三角形建构但硬件TL仍是
一大进步原因是拥有该技术的显示核心从CPU接管了大量工作。硬件TL引擎带来的效果是3D模型可以用更多的多边形来描绘这样就拥有了更加细腻的效果。而对于Lighting来说CPU不必再计算大量的光照数据直接通过显卡就能获得更好的效能。2.可编程Shader技术Shader即着器它属于图形渲染管线的一部分是专门负责执行
重要的3D模型信息的转换、赋值、基本运算等功能的注意我这里说的是基本运算因为对于当时GPU来说在处理器3D模型的信息的时候还是要一定程度上依赖于CPU 的运算能力的。Shader的特是基于可编程模式设计将原有的固定渲染管线分离出可编程的部分来给编程者更多的设计空间。Shader从编程角度上包括Geometry Shader 、Vertex Shader 、Pixel Shader 即几何着器、定点着器、像素着器。所谓Vertex就是我们熟悉的组成3D图形的顶点由于设计3D模型是基于坐标空间内部设计的所以Vertex信息包含了3D模型在空间内的坐标等信息。Vertex Shader则是对于Vertex信息的运算编程器可以通过赋予特定的算法而在工作中改变3D模型的外形Vertex Shader顶点运算单元可以直接检索显存
中的材质数据。现在的游戏场景越来越复杂了。所涉及到的材质和多边形数量都非常惊人。顶点材质技术可以极大的提高GPU在处理复杂的游戏场景时的效率。并且游戏开发人员还可以利用Vertex Shader的这一新的特性充分发挥想象实现很多非常漂亮的特效。3. CineFX技术CGcomputer graphics计算机图形级体验Cinefx是一个跨平台、开放源码的影像编辑软件。Nvidia公司目前已经推出了CineFX 3.0对Pixel Shader进行较大的改进令其性能有了大幅增长。首先是彻底去掉了Combiner单元取而代之的是一个完整功能的FP32 shader unit 2单元Pixel Shader的浮点运算能力也因此提升改善了以往寄存器用量增大后性能下降的问题拥有更庞大的流水线系统使用了并行16×1渲染管线的架构提
升了渲染效率。浮点运算浮点运算就是实数运算因为计算机只能存储整数所以实数都是约数这样浮点运算是很慢的而且会有误差。现在大多数机器都是32位的也就是说32位都用来表示整数的话那么对于无符号整数就是0 到232-1对于有符号的话就是-231 到231-1。当我们用不同的电脑计算圆周率时会发现一台电脑的计算较另一台来讲结果更加精确。或者我们在进行战游戏的时候当一粒子弹击中墙壁时墙上剥落下一块墙皮同样的场面在一台电脑上的表现可能会非常的呆板、做作而在另外一台电脑上就会非常生动形象甚至与我们在现实中看到的所差无几。这都是浮点运算能力的差异导致的。4.通用视觉运算技术为了能够在图形计算之外的更多领域发挥GPU强大的计算功能人们2002年就开始研究如何能够利用GPU完成通常意义上的数据运算这被称之为GPGPUGeneral-Purpose computing on Graphics Processing Units基于GPU的通用计算。通用计算包括物理加速、人工智能和光线跟踪。利
用显示内核作相关计算效能比单纯用CPU更好。近年两大显示内核制造者ATI和NVIDIA都大力推动通用计算。现时已有三种相关的开发接口的分别是CUDA、FireStream和OpenCL。CUDA是NVIDIA的专属接口非NVIDIA显示内核不能支持。FireStream是ATI所开发而OpenCL则由Khronos所制定。而DirectCompute 11是DirectX 11的一部分由微软制定。传统显示核心的架构分为顶点着引擎和像素着引擎。当顶点着引擎负荷很重时像素着引擎可能闲置著反之亦然。这就造成
显示核心运算能力不被充分发挥浪费资源。DirectX 10将顶点着、几何着和像素着合并成一个渲染流程。所以每一个统一流处理器都能处理顶点、几何和像素数据不会有闲置问题效率显著提升。GPU原本只是为了进行3D图形加速而诞生的芯片由于其专用性体系结构较之CPU大大简化从而可以高度优化设计进行大规模的浮点数并行计算。当代GPU在这方面的性能远远超过了CPU。在浮点数计算速度上NVIDIA最新的GPU超过Intel最快的CPU达10倍以上而据称这一差距在未来几年内会达到数百倍。单就这一点来说GPU早就是计算机中最快的芯片了。因为具备强大的并行处理能力和极高的存储器带宽GPU如果用于处理诸如金融分析、地震预报、医学影像、流体模拟等需要大量重复数据集运算的应用程序就有可能获得比CPU强大得多的计算能力。相比之下由于CPU本身为顺序任务设计浮点运算能力不足即便采用多核架构并行处理能力也是有限的。不过有人提出GPU可能取代CPU而成为未来电脑的核心则言之过早。CPU和GPU作为现代电脑的两个重要部件其功能各有所长。CPU擅长的是操作系统系统软件应用程序通用计算系统控制等等游戏中人工智能物理模拟等等3D建模-光线追踪渲染虚
拟化技术——抽象硬件同时运行多个操作系统或者一个操作系统的多个副本等等。而GPU则擅长图形类矩阵运算非图形类并行数值计算高端3D游戏。在一台均衡计算的计算机系统中CPU和GPU还是各司其职除了图形运算GPU将来可能主要集中在高效率低成本的高性能并行数值计算帮助CPU分担这种类型的计算提高系统这方面的性能。而当前的典型应用还是高端3D游戏一个高效的GPU配合一个高效的CPU3D游戏的整体效率才能得到保证。GPU密集型计算GPU相比CPU拥有更多的处理单元GPU的处理核心SP基于传统的处理器核心设计能够进行整数浮点计算逻辑运算等操作GPU的浮点运算能力可以达到CPU 的数十倍发展背后的主要原因是GPU是特定于计算密集的、高并行的计算而这正是图像渲染所需要的因此GPU设计了更多的晶体管专用于数据处理而非数据高速缓存和流控制。仅仅几年的时间可编程图像处理器单元已经发展成为绝对的计算主力由于具有由高内存带宽驱动的多个核心今天的GPU为图像和非图像处理提供了难以置信的资源。GPU从硬体设计上看就是一种完全为多线程设计的处理核心拥有复数的管线平台设计完全胜任每线程处理单指令的工作。GPU处理的首要目标是运算以及数据吞吐量而CPU内部晶体管的首要目的是降低处理的延时以及保持管线繁忙这也决定了GPU在密集型计算比起CPU来更有优势。GPU发展历史图形加速器Graphics accelerators可以称得上是GPU的前身使用图形加速器不仅能加快视频显示的速度而且使CPU能分出更多的时间去执行其他任务。对现代软件像图形界面和多媒体这样的应用程序使用图形加速器是必须的。GPU是专门用于浮点运算的显卡处理器图形加速器则采用常用于绘制图形所使用的特殊的数学运算的定制芯片该芯片的性能决定了图形加速器的效率。它们主要用于高端3D游戏或进行3D绘图。GPU 实现了原始图像处理更高的效率
使图像处理速度大大超过由CPU来完成屏幕绘图的速度。最早期的二维计算机图形操作包括绘制位图动画运用光栅的位图模型绘制长方形、三角形、圆和圆弧等操作。现代GPU还支持三维计算机图形通常包括处理数字视频相关功能。1970年代ANTIC和CTIA芯片为Atari-8位电脑提供硬件控制的图形和文字混合模式以及其他视频效果的支持。ANTIC芯片是一个特殊用途的处理器用于映射文字和图形数据到视频输出。ANTIC芯片的设计师Jay Miner随后为Amiga 设计图形处理器。1980年代Commodore Amiga是第一个于市场上包含镜像显示功
能在其视频硬件上的电脑而IBM 8514图形系统是第一个植入2D显示功能的PC显卡。Amiga是独一无二的因为它是一个完整的图形加速器拥有几乎所有的图像产生功能包括线段绘画区域填充块图像传输以及拥有自己一套指令集虽然原始的辅助绘图处理器。而在先前和之后一段时间在大多数系统上一般用途的CPU是要处理各个方面的绘图显示的。1990年代S3 Graphics ViRGE 显卡1990年代初期Microsoft Windows的崛起引发人们对高性能、高分辨率2D位图图形运算UNIX工作站和苹果公司的Macintosh原本是此领域的领导者的兴趣。在个人电脑市场上Windows的优势地位意味着PC图形厂商可以集中精力发展单一的编程接口图形设备接口GDI。1991年S3 Graphics推出了第一款单芯片的2D图像加速器名为S3 86C911设计师借保时捷911的名字来命名以表示它的高性能。其后86C911催生了大量的仿效者到1995年所有主要的PC图形处理器制造商都于他们的芯片内增加2D加速的支持。到这个时候固定功能的Windows 加速器的性能已超过昂贵的通用图形辅助处理器令这些辅助处理器续渐消
失于PC市场。在整个1990年代2D图形继续加速发展。随着制造能力的改善图形处理器的集成水平也同样提高。加上应用程序接口API的出现有助运行多样工作如供微软Windows 3.x使用的WinG图像程序库和他们后来的DirectDraw接口提供Windows 95和更高版本的2D游戏硬件加速运算。在1990年代初期和中期CPU 辅助的即时三维图像越来越常见于电脑和电视游戏上从而导致大众对由硬件加速的3D图像要求增加。早期于大众市场出现的3D图像硬件的例子有第五代视频游戏机如PlayStation和任天堂64。在电脑范畴显著的失败首先尝试低成本的3D图形处理器为S3 ViRGEATI的3D Rage和Matrox的Mystique。这些芯片主要是在上一代的2D加速器上加入三维功能有些芯片为了便于制造和花费最低成本甚至使用与前代兼容的针脚。起初高性能3D图像只可经设有3D加速功能和完全缺乏2D GUI加速功能的独立绘图处理卡上运算如3dfx的Voodoo。然而由于制造技术再次取得进展图像、2D GUI 加速和3D功能都集成到一块芯片上。Rendition的Verite是第一个能做到这样的芯片组。OpenGL是出现于90年代初的专业图像API并成为了在个人电脑领域上图像发展的主导力量和硬件发展的动力。虽然在OpenGL的影响下带起了广泛的硬件支持但在当时用软件实现的OpenGL仍然普遍。随着时间的推移DirectX在90年代末开始受到Windows游戏开发商的欢迎。不同于OpenGL微软坚持提供严格的一对一硬件支持。这种做法使到DirectX身为单一的图形API方案并不得人心因为许多的GPU也提供自己独特的功能而当时的OpenGL应用程序已经能满足它们导致DirectX往往落后于OpenGL一代。随着时间的推移微软开始与硬件开发商有更紧密的合作并开始针对DirectX的发布与图形硬件的支持。Direct3D 5.0是第一个增长迅速的API版本而且在游戏市场中获得迅速普及并直接与一些专有图形库竞争而Open
GL仍保持重要的地位。Direct3D 7.0支持硬件加速座标转换和光源TL。此时3D加速器由原本只是简单的栅格器发展到另一个重要的阶段并加入3D渲染流水线。NVIDIA的GeForce 256也称为NV10是第一个在市场上有这种能力的显卡。硬件座标转换和光源两者已经是OpenGL拥有的功能于90年代在硬件出现为往后更为灵活和可编程的像素着引擎和顶点着引擎设置先例。2000年到现在随着OpenGL API和DirectX类似功能的出现GPU增加了可编程着的能力。现在每个像素可以经由独立的小程序处理当中可以包含额外的图像纹理输入而每个几何顶点同样可以在投影到屏幕上之前被独立的小程序处理。NVIDIA是首家能生产支持可编程着芯片的公司即GeForce 3代号

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。