GPU , 学名可编程图形处理单元 , 俗称可编图形硬件 , 一般被行外称为显卡(GPU不是显卡 , 它是显卡中的核心处理单元) 。
GPU概念产生于20世纪70、80年代交替年间 , 主要用于游戏和视频游戏方面 , 那时的全部战力仅仅能够快速合成几张图片 。十年后 , 80、90年代交替时 , 出现了基于数字信号处理芯片 , 它的主要特点就是贵 , 当然性能得到了极大提高 。1991、1995年对2D加速器的支持得到升级 。
文章插图
1998年是划时代的一年 , NVIDIA(英伟达)宣布modern GPU研发成功 , 进入GPU可编程时代 , 是历史性突破 。与之前的GPU不同 , 程序员可以将代码运行在GPU的处理单元中 , 而之前的GPU仅仅能处理固定功能 , 一旦设计完成 , 用户不能根据需求扩展功能 , 最多可以参与简单的设置(固定管线着色器) 。
1998年后 , modern GPU的发展又分为四个阶段:
第一代 , 代表者有NVIDIA的TNT2、 ATI的Grage 、3Dfx的Voodoo3 。这一时期的GPU功能很有限 , 只能用于纹理组合的数学计算 , 或者像素值的计算 。
第二代 , 1999年到2000年(都是时代之交) , 这一时期的GPU具备了三维坐标转换和光照计算能力 , OpenGL和DirectX7(图形接口簇)相继支持应用程序通过硬件进行坐标变换 。同时对纹理的操作扩展到3维的CubeMap 。代表作有NVIDDIA的GeForce256、MAX , ATI的Radeon 7500等 。
第三代 , 2001年 , 支持顶点编程能力的显卡面世(暂不支持像素编程能力) 。
第四代 , 至今 , 市面的显卡同时支持了顶点(vertex)和片段(fragment , 也可翻译成片元)编程能力 。当前课程中的重要一环就是“顶点和片段着色器” 。
那么同学们想一想 , 为什么要发展GPU呢?CPU不是也能执行程序吗?还要显卡做什么呢?
先来看一张图:
文章插图
GPU:控制器少 , 计算单元多 。
CPU:控制器很大 , 计算单元则很少 。这里不要纠结计算单元的面积大小 , 这只是示意图 。
GPU采用流式并行计算模式 , 每一个计算单元可以单独负责一个像素点 , 每个像素点不依赖旁边像素点的数据 , 所以每个计算单元都是独立并行的 , 不需要控制器额外干涉 。
CPU处理则与之不同 , 线性处理较多 , 这条数据的可能依赖上一条数据的结果 , 同时还需要控制器参与取指令 , 指出下一条指令在内存中的位置 。所以CPU的结构不适合独立的像素运算(像素一个一个的算效率极低) 。
GPU在控制方面弱于CPU , 但在并发算力方面远远胜于CPU 。例如黑客们破解密码时 , 需要大量的尝试性计算 , 他们首选必是GPU 。
所以 , 但看计算能力 , GPU由于高并发能力 , 算力远远大于CPU;但说到分布、有序、控制力上 , CPU要胜过GPU 。
【CPU vs GPU,谁才是算力之王?】
推荐阅读
- 武则天姐姐韩国夫人的女儿是怎么死的 武则天中韩国夫人是谁
- 庞统死后张飞和诸葛亮分兵进入蜀中,请问谁率先到达 庞统和诸葛亮一起北伐能成功吗
- 马谡失守街亭是被谁打败了 马谡曾在街亭一战败给谁
- 宋朝的刘娥皇后的一生怎么样 刘娥是谁的皇后
- 诸葛亮的老师是谁有几个徒弟 传说诸葛亮是谁的弟子
- 曹操手下最厉害的将军是谁
- 涿鹿之战真实存在吗 涿鹿之战是谁和谁
- 朱棣之后谁继位朱高炽传位给谁了 朱棣为什么让朱高炽继位
- 大学|大专生逆袭考上北大研究生,因第一学历是专科被嫌弃,是谁的错?
- 灶王爷是谁? 灶王爷的妻子叫什么