怎样将GPU作为CPU的协处理器工作
GPU图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示
核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。
用途是将计算机系统所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示,是连接显示器和个人电脑主板的重要元件,也是人机对话的重要设备之一。显卡作为电脑主机里的一个重要组成部分,承担输出显示图形的任务,对于从事专业图形设计的人来说显卡非常重要。
显卡的处理器称为图形处理器(GPU),它是显卡的心脏,与CPU类似,只不过GPU是专为执行复杂的数学和几何计算而设计的,这些计算是图形渲染所必需的。某些最快速的GPU集成的晶体管数甚至超过了普通CPU。
时下的GPU多数拥有2D或3D图形加速功能。如果CPU想画一个二维图形,只需要发个指令给GPU,如在坐标位置(x, y)处画个长和宽为ab大小的长方形,GPU就可以迅速计算出该图形的所有像素,并在显示器上指定位置画出相应的图形,画完后就通知CPU 我画完了,然后等待CPU发出下一条图形指令。
有了GPU,CPU就从图形处理的任务中解放出来,可以执行其他更多的系统任务,这样可以大大提高计算机的整体性能。
GPU会产生大量热量,所以它的上方通常安装有散热器或风扇。
GPU是显示卡的大脑,GPU决定了该显卡的档次和大部分性能,同时GPU也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像与特效时主要依赖CPU的处理能力,称为软加速。3D显示芯片是把三维图像和特效处理功能集中在显示芯片内,也就是所谓的硬件加速功能。显示芯片一般是显示卡上最大的芯片(也是引脚最多的)。时下市场上的显卡大多采用NVIDIA和 AMD-ATI 两家公司的图形处理芯片。
GPU已经不再局限于3D图形处理了,GPU通用计算技术发展已经引起业界不少的关注,事实也证明在浮点运算、并行计算等部分计算方面,GPU可以提供数十倍乃至于上百倍于
CPU的性能,如此强悍的新星难免会让CPU厂商老大英特尔为未来而紧张, NVIDIA和英特尔也经常为CPU和GPU谁更重要而展开口水战。GPU通用计算方面的标准目前有OpenCL、CUDA、ATI STREAM。其中,OpenCL(全称Open CompuTIng Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算服务器、桌面计算系统、手持设备编写高效轻便的代码,而且广泛适用于多核心处理器(CPU)、图形处理器(GPU)、Cell类型架构以及数字信号处理器(DSP)等其他并行处理器,在游戏、娱乐、科研、医疗等各种领域都有广阔的发展前景,AMD-ATI、NVIDIA时下的产品都支持OPEN CL。
1985年 8月20日 ATi公司成立,同年10月ATi使用ASIC技术开发出了第一款图形芯片和图形卡,1992年 4月 ATi发布了 Mach32 图形卡集成了图形加速功能,1998年 4月 ATi被IDC评选为图形芯片工业的市场领导者,但那时候这种芯片还没有GPU的称号,很长的一段时间ATI都是把图形处理器称为VPU,直到AMD收购ATI之后其图形芯片才正式采用GPU的名字。
NVIDIA公司在1999年发布GeForce 256图形处理芯片时首先提出GPU的概念。从此NV显卡的芯就用这个新名字GPU来称呼。GPU使显卡削减了对CPU的依赖,并实行部分原本CPU的工作,更加是在3D图形处理时。GPU所采用的核心技术有硬体TL、立方环境材质贴图与顶点混合、纹理压缩及凹凸映射贴图、双重纹理四像素256位渲染引擎等,而硬体TL技术能够说是GPU的标志。
CPU中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。 CPU包括运算逻辑部件、寄存器部件和控制部件等。
逻辑部件
英文Logic components;运算逻辑部件。可以执行定点或浮点算术运算操作、移位操作以及逻辑操作,也可执行地址运算和转换。 寄存器
寄存器部件,包括寄存器、专用寄存器和控制寄存器。 通用寄存器又可分定点数和浮点数两类,它们用来保存指令执行过程中临时存放的寄存器操作数和中间(或最终)的操作结果。 通用寄存器是中央处理器的重要部件之一。 控制部件
英文Control unit;控制部件,主要是负责对指令译码,并且发出为完成每条指令所要执行的各个操作的控制信号。
其结构有两种:一种是以微存储为核心的微程序控制方式;一种是以逻辑硬布线结构为主的控制方式。
微存储中保持微码,每一个微码对应于一个最基本的微操作,又称微指令;各条指令是由不同序列的微码组成,这种微码序列构成微程序。中央处理器在对指令译码以后,即发出一定时序的控制信号,按给定序列的顺序以微周期为节拍执行由这些微码确定的若干个微操作,即可完成某条指令的执行。
简单指令是由(3~5)个微操作组成,复杂指令则要由几十个微操作甚至几百个微操作组成。
协处理器协处理器(coprocessor),一种芯片,用于减轻系统微处理器的特定处理任务。 协处理器,这是一种协助中央处理器完成其无法执行或执行效率、效果低下的处理工作而开发和应用的处理器。这种中央处理器无法执行的工作有很多,比如设备间的信号传输、接入设备的管理等;而执行效率、效果低下的有图形处理、声频处理等。为了进行这些处理,各种辅助处理器就诞生了。需要说明的是,由于现在的计算机中,整数运算器与浮点运算器已经集成在一起,因此浮点处理器已经不算是辅助处理器。而内建于CPU中的协处理器,同样不算是辅助处理器,除非它是独立存在。
协处理器的消亡
80486CPU之前有协处理器,提高浮点运算能力,那时cpu较弱才有的协处理器,速度是原来数百倍不止,pc机一般不存在协处理器了。 ARM 微处理器
ARM 微处理器可支持多达 16 个协处理器,用于各种协处理操作,在程序执行的过程中,每个协处理器只执行针对自身的协处理指令,忽略 ARM 处理器和其他协处理器的指令。ARM 的协处理器指令主要用于 ARM 处理器初始化 ARM 协处理器的数据处理操作,以及在ARM 处理器的寄存器和协处理器的寄存器之间传送数据,和在 ARM 协处理器的寄存器和存储器之间传送数据。 ARM 协处理器指令包括以下 5 条: CDP 协处理器数操作指令 LDC 协处理器数据加载指令 STC 协处理器数据存储指令 MCR ARM 处理器寄存器到协处理器寄存器的数据传送指令 MRC 协处理器寄存器到ARM 处理器寄存器的数据传送指令。
ARM:协处理器包括以下5条: CDP:协处理器数据操作指令。 LDC:协处理器数据加载指令。 STC:协处理器数据存储指令。
MCR:ARM处理器寄存器到协处理器寄存器的数据传送指令。 MRC:协处理器寄存器到ARM处理器寄存器的数据传送指令。
怎样将GPU作为CPU的协处理器工作协处理器(coprocessor),一种芯片,用于减轻系统微处理器的特定处理任务。
CPU: Center Process Unit的缩写,译为中央处理器。也做叫微处理器。指具有运算器和控制器功能的大规模集成电路。
GPU:(Graphic Processing Unit)图形处理芯片。是显示卡的心脏,也就相当于CPU在电脑中的作用,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像和特效时主要依赖CPU的处理能力,称为软加速。
3D显示芯片是将三维图像和特效处理功能集中在显示芯片内,也即所谓的硬件加速功能。显示芯片通常是显示卡上最大的芯片。
FPU:(Float Point Unit)浮点运算单元,FPU是专用于浮点运算的处理器,以前的FPU是一种单独芯片,在486之后,英特尔把FPU与集成在CPU之内。