GPU 是 Graphics Processing Unit(图形处理器)的简称,它是计算机系统中负责处理图形和图像相关任务的核心组件。GPU 的发展历史可以追溯到对计算机图形处理需求的不断增长,以及对图像渲染速度和质量的不断追求。从最初的简单图形处理功能到如今的高性能计算和深度学习加速器,GPU 经历了一系列重要的技术突破和发展转折。
在接下来的内容中,我们还将探讨 GPU 与 CPU 的区别,了解它们在设计、架构和用途上存在显著差异。此外,我们还将简短介绍一下 AI 发展和 GPU 的联系,并探讨 GPU 在各种领域的应用场景。
除了图形处理和人工智能,GPU 在科学计算、数据分析、加密货币挖矿等领域也有着广泛的应用。深入了解这些应用场景有助于我们更好地发挥 GPU 的潜力,解决各种复杂计算问题。现在让我们深入了解 GPU 的发展历史、与 CPU 的区别、AI 所需的重要性以及其广泛的应用领域。
在 GPU 发展史上,第一代 GPU 可追溯至 1999 年之前。这一时期的 GPU 在图形处理领域进行了一定的创新,部分功能开始从 CPU 中分离出来,实现了针对图形处理的硬件加速。其中,最具代表性的是几何处理引擎,即 GEOMETRY ENGINE。该引擎主要用于加速 3D 图像处理,但相较于后来的 GPU,它并不具备软件编程特性。这意味着它的功能相对受限,只能执行预定义的图形处理任务,而无法像现代 GPU 那样灵活地适应不同的软件需求。
然而,尽管功能有限,第一代 GPU 的出现为图形处理领域的硬件加速打下了重要的基础,奠定了后续 GPU 技术发展的基石。
第二代 GPU 的发展跨越了 1999 年到 2005 年这段时期,其间取得了显著的进展。1999 年,英伟达发布了 GeForce256 图像处理芯片,这款芯片专为执行复杂的数学和几何计算而设计。与此前的 GPU 相比,GeForce256 将更多的晶体管用于执行单元,而不是像 CPU 那样用于复杂的控制单元和缓存。它成功地将诸如变换与光照(TRANSFORM AND LIGHTING)等功能从 CPU 中分离出来,实现了图形快速变换,标志着 GPU 的真正出现。
随着时间的推移,GPU 技术迅速发展。从 2000 年到 2005 年,GPU 的运算速度迅速超越了 CPU。在 2001 年,英伟达和 ATI 分别推出了 GeForce3 和 Radeon 8500,这些产品进一步推动了图形硬件的发展。图形硬件的流水线被定义为流处理器,顶点级可编程性开始出现,同时像素级也具有了有限的编程性。
尽管如此,第二代 GPU 的整体编程性仍然相对有限,与现代 GPU 相比仍有一定差距。然而,这一时期的 GPU 发展为后续的技术进步奠定了基础,为图形处理和计算领域的发展打下了坚实的基础。
从长远看,英伟达的 GPU 在一开始就选择了正确的方向 MIMD,通过 G80 Series,Fermi,Kepler 和 Maxwell 四代(下一章节会有解析)大跨步进化,形成了完善和复杂的储存层次结构和指令派发/执行管线。ATI/AMD 在一开始选择了 VLIW5/4,即 SIMD,通过 GCN 向 MIMD 靠拢,但是进化不够完全(GCN 一开始就落后于 Kepler),所以图形性能和 GPGPU 效率低于对手。
英伟达和 ATI 之争本质上是 shader 管线与其他纹理,ROP 单元配置比例之争,A 认为计算用 shader 越多越好,计算性能强大,N 认为纹理单元由于结构更简单电晶体更少,单位面积配置起来更划算,至于游戏则是越后期需要计算的比例越重。
第三代 GPU 的发展从 2006 年开始,带来了方便的编程环境创建,使得用户可以直接编写程序来利用 GPU 的并行计算能力。在 2006 年,英伟达和 ATI 分别推出了 CUDA(Compute Unified Device Architecture)和 CTM(CLOSE TO THE METAL)编程环境。
这一举措打破了 GPU 仅限于图形语言的局限,将 GPU 变成了真正的并行数据处理超级加速器。CUDA 和 CTM 的推出使得开发者可以更灵活地利用 GPU 的计算能力,为科学计算、数据分析等领域提供了更多可能性。
2008 年,苹果公司推出了一个通用的并行计算编程平台 OPENCL(Open Computing Language)。与 CUDA 不同,OPENCL 并不与特定的硬件绑定,而是与具体的计算设备无关,这使得它迅速成为移动端 GPU 的编程环境业界标准。OPENCL 的出现进一步推动了 GPU 在各种应用领域的普及和应用,为广大开发者提供了更广阔的创新空间。
第三代 GPU 的到来不仅提升了 GPU 的计算性能,更重要的是为其提供了更便捷、灵活的编程环境,使得 GPU 在科学计算、深度学习等领域的应用得以广泛推广,成为现代计算领域不可或缺的重要组成部分。
下图分别展示了英伟达和 AMD 的工具链架构,我们可以看到两者的层次架构都是十分相像的,最核心的区别实则在于中间的 libraries 部分,两家供应商均根据自己的硬件为基础 library 做了优化;此外在编译层面两方也会针对自身架构,在比如调度,算子融合等方面实现各自的编译逻辑;而在对外接口上双方都在争取提供给当今热门的框架和应用以足够的支持。
以及从下方二者的细粒度对比图中,我们更能看出两方工具链架构间的一一映射和具体细节实现上的区别:
现在探讨一下 CPU 和 GPU 在架构方面的主要区别,CPU 即中央处理单元(Central Processing Unit),负责处理操作系统和应用程序运行所需的各类计算任务,需要很强的通用性来处理各种不同的数据类型,同时逻辑判断又会引入大量的分支跳转和中断的处理,使得 CPU 的内部结构异常复杂。
GPU 即图形处理单元(Graphics Processing Unit),可以更高效地处理并行运行时复杂的数学运算,最初用于处理游戏和动画中的图形渲染任务,现在的用途已远超于此。两者具有相似的内部组件,包括核心、内存和控制单元。
GPU 和 CPU 在架构方面的主要区别包括以下几点:
因此,CPU 更适合处理顺序执行的任务,如操作系统、数据分析等;而 GPU 适合处理需要计算密集型 (Compute-intensive) 程序和大规模并行计算的任务,如图形处理、深度学习等。在异构系统中,GPU 和 CPU 经常会结合使用,以发挥各自的优势。
GPU 与人工智能(AI)的发展密不可分。2012 年的一系列重要事件标志着 GPU 在 AI 计算中的崭露头角。Hinton 和 Alex Krizhevsky 设计的 AlexNet 是一个重要的突破,他们利用两块英伟达 GTX 580 GPU 训练了两周,将计算机图像识别的正确率提升了一个数量级,并赢得了 2012 年 ImageNet 竞赛冠军。这一成就充分展示了 GPU 在加速神经网络模型训练中的巨大潜力。
同时,谷歌和吴恩达等团队的工作也进一步强调了 GPU 在 AI 计算中的重要性。谷歌利用 1000 台 CPU 服务器完成了猫狗识别任务,而吴恩达等则只用了 3 台 GTX680-GPU 服务器,取得了同样的成果。这一对比显示了 GPU 在深度学习任务中的显著加速效果,进一步激发了对 GPU 在 AI 领域的广泛应用。
从 2005/2006 年开始,一些研究人员开始尝试使用 GPU 进行 AI 计算,但直到 2012/2013 年,GPU 才被更广泛地接受。随着神经网络层次越来越深、网络规模越来越大,GPU 的加速效果越来越显著。这得益于 GPU 相比 CPU 拥有更多的独立大吞吐量计算通道,以及较少的控制单元,使其在高度并行的计算任务中表现出色。
因此,GPU 在 AI 发展中的作用愈发凸显,它为深度学习等复杂任务提供了强大的计算支持,并成为了 AI 计算的标配。从学术界到互联网头部厂商,都开始广泛采用 GPU,将其引入到各自的生产研发环境中,为 AI 技术的快速发展和应用提供了关键支持。
转载自:
作者:用户11307734
链接:https://cloud.tencent.com/developer/article/2471370
来源:腾讯云
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
网站关键词排名精准查询洛阳搜狗关键词自然排名系统忻州创意关键词排名关注关键词排名惠州关键词排名优化咨询价格浙江代做关键词排名直通车关键词排名掉提高关键词排名推荐k火21星海城关键词网站排名台北谁懂做关键词排名河南企业长尾关键词排名系统律师关键词排名优化系统多少钱拼多多关键词排名卡位关键词本地排名和异地排名关键词排名为什么一直停止涟源关键词排名宁波刷关键词排名数据关键词排名关键词快速排名ck云速捷灬长治关键词排名平台关键词排名突然下降原因网站怎么关键词排名靠前溧阳网站关键词排名关键词排名系统痈云速捷榜首关键词快速排名易下拉咨询许昌新站关键词搜索排名技术河南推广关键词排名优化方案昆明搜狗关键词推广快速排名肇庆关键词排名首页刷关键词排名刂金苹果实力钅彭州关键词优化排名周口搜狗关键词优化排名软件什么是关键词排名优化策略关键词排名提升择火15星aso 关键词排名 规则济南搜索关键词排名海南百度关键词排名工具拼多多关键词排名怎么掉下去了南京关键词自然排名公司百度关键词有排名但是看不到关键词排名核心因素靠谱关键词排名搜自由关键词排名系统刷关键词排名釒金苹果出词快节能设备关键词优化排名速卖通怎样看关键词排名最佳关键词排名关键词排名优化慧择火星潍城关键词优化排名哪家好吉林关键词排名推广熊掌号提高关键词排名idc服务器关键词排名怎么把一个关键词做到排名开封新站关键词排名优化工具网站关键词排名提升视频速卖通关键词搜索排名佛山网络关键词排名河南平台关键词排名优化公司宜州百度关键词快速排名公众号排名关键词百度关键词排名上去公开关键词排名管理澳门关键词排名松北区关键词seo排名优化网站排名怎么优化关键词济源搜狗关键词排名优化价格陕西新站关键词自然排名系统淘宝女装搜索关键词排名SEO关键词优化排名技术亚马逊关键词排名维护关键词排名力荐火21星热情如何提高关键词的排名和展现黄石关键词排名推广关键词网站排名那就易速达关键词排名规则第六章番禺网站关键词排名地产关键词排名渠道湖南搜狗关键词点击排名百万关键词排名软件查淘宝关键词排名app抖音关键词排名地域查网页排名关键词关键词排名公司精通火24星云南靠谱的seo关键词排名知乎文章排名和关键词怎么看关键词seo排名蜘蛛屯坪山关键词排名推广公司濮阳百度关键词优化排名工具关键词快速排名yo云速捷丷上海关键词排名批量关键词排名提升糹金手指下拉百度关键词优化排名选择关键词排名优化房产中介崇左360关键词排名关键词排名bj金手指靠谱关键词排名找选火29星天津快速关键词排名优化教程如何找到公众号关键词热门排名焦作口碑好的关键词排名系统关键词排名优化机构 s长尾关键词排名只有易速达青海医疗关键词排名万宁关键词排名价格关键词优化仟金手指排名一昆明网站关键词排名推广方法做网站关键词排名信阳搜狗关键词优化排名技术关键词网站排名可信火24星关键词优化排名特点今日头条关键词排名怎么上首页宁国网站关键词排名优化账户内无排名关键词批量改价湛江关键词排名去哪里咨询拼多多关键词排名在哪里龙岗关键词排名方案外包如何在直通车查关键词排名查关键词排名查询关键词排名按天关键词排名ap首家忠魁互联关键词搜索排名统计镇江亚马逊关键词排名生意参谋怎么查看关键词排名界首关键词排名推广开封平台长尾关键词排名哪家好搜索关键词排名费用浙江关键词排名优化技巧关键词实时排名工具关键词排名优化在火12星拼多多如何查询关键词排名丹灶关键词排名哪家便宜关键词优化仟金手指排名六苏州园区点石关键词排名优化关键词排名第郑州排名快关键词排名网站关键词快速排名价格刷关键词排名喜欢易速达关键词排名就找金手指效果好关键词排名优化牧云速捷极度关键词排名饣金手指谷哥十四福建怎么学关键词排名优化靠谱长长春关键词排名春网络推广湖北刷搜狗关键词排名有没有做灰色关键词排名达州市关键词seo排名优化郑州关键词自然排名代理淘宝怎么买关键词排名先进关键词排名建议关键词排名姆谕 大将军28谷歌关键词排名效果怎么样重庆找关键词排名焦作网站长尾关键词排名工具关键词排名软件 site惠州关键词排名企业锦州百万关键词排名荆门关键词优化排名公司seo搜索排名优化关键词那曲地区关键词排名出名的关键词排名刷关键词排名忄金苹果效果好网站关键词排名密度查询济源百度关键词排名优化厂家关键词排名外包代理松北区关键词seo排名优化阿里关键词排名在哪关键词排名推广多少钱一年抖音搜索关键词用户排名龙华关键词排名优化哪家好买关键词排名关键词排名提升只信p火20星刷关键词排名丷金苹果下拉钅生意参谋怎么查询关键词排名关键词排名提升佳选火28星达拼多多查看关键词排名百度关键词优化排名代理如何做单个关键词排名潍坊高新关键词排名优化自贡关键词排名公司沧州行业关键词排名刷关键词排名来火22星关键词排名全掉了2019刷网站关键词排名首贵州营销关键词排名优化价格新浪博客关键词怎么排名高要seo关键词排名关键词挖掘网站排名百度收录与关键词排名的关系专业关键词排名价值周口整站关键词优化排名哪家好网站核心关键词排名关键词排名优化费用 s汉口关键词排名哪家好平顶山天眼关键词排名价格上海推广关键词排名价格亚马逊免费关键词排名工具关键词快速排名技术核心关键词排名丢失友链如何提升关键词排名浙江店铺关键词排名北京移动关键词排名新北区关键词seo排名优化