0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MCM应用于GPU还需要多久

FPGA之家 来源:FPGA之家 作者:FPGA之家 2022-08-14 14:50 次阅读

消费用户市场,普通用户都能用上16核甚至64核处理器的PC。这可不是单纯堆核心就完事儿的。以当前CPU核心的规模,和可接受的成本,消费电子设备上一颗芯片就达到这种数量的核心数目,与chiplet的应用是分不开的。

Chiplet是这两年业界的香饽饽。前不久的ISSCC会议上,chiplet也是今年的热门议题。AMD从Zen架构开始,Ryzen系列处理器就全面应用了chiplet技术。Chiplet并不是什么新技术,更早提的MCM(multi-chip module)就是应用了chiplet的一种芯片方案。

简单来说,MCM通常是指将多个die(多个IC或chips)封装到一起的多芯片模组。构成MCM的一个个die,或者功能电路模块,即是chiplet。多个chiplet之间能够协作,构成更大的芯片,也就是MCM(有时,MCM/Multi-chip Package又被当做某一类封装方式)。

不过本文探讨的MCM/chiplet可能有一定程度的窄化,这里不探讨类似Intel Kaby Lake G那一类方案,即便它算是典型的chiplet应用(以及像很多近代Intel处理器那样只将处理器die和PCH die分开的那类chiplet,以及HBM存储chiplet)。可能单纯称其为MCM会更合理。

以AMD的Ryzen 3000系列处理器为例,每4个核心(外加cache)组成一个CCX,两个CCX就组成一个CCD——也就是一个die或chiplet。一颗处理器芯片上就会有多个这样的CCD。另外还有个I/O die作为通讯中心(cIOD),连接各个die,如上图所示。

值得一提的是,Ryzen 3000处理器的CCD部分制造采用7nm工艺,而cIOD则选择了12nm工艺,这就很能体现chiplet在制造上物尽其用、节约成本的优越性了。

如果说处理器的chiplet/MCM商用已经全面落地,那么die size更大的GPU能不能也采用MCM的方案?这是本文要探讨的话题,MCM应用于GPU还需要多久?借此也能窥见chiplet作为此类高算力芯片的技术方向时,半导体制造已经走到了哪里。

当GPU的die尺寸大到吓人的程度时

如果只看消费市场,骨灰级玩家对GPU算力的追求是无止尽的。只怕算力不够,不怕价格、功耗有多夸张。图形算力的饥渴从未停止过:1998年3dfx引入SLI技术,即2个或者更多的显卡一起上,实现更大规模的图形并行计算。

SLI同类技术(包括AMD的CrossFire)并未大规模普适,主要是因为这样的技术不仅有硬件级别的支持要求,而且对游戏开发者也有要求。在很多不支持多GPU并行计算的游戏中,此类方案甚至会令游戏体验变差。不过多GPU扩展的方案,在当代数据中心还是比较常见的。

基于这个思路,如果将多GPU的层级下沉到多die——也就是一个GPU之上,有多个chiplet,堆砌更多的图形计算单元,好像也是完全行得通的方案。只不过多GPU(或多芯显卡)需要跨系统或者跨板级,而多die则是基于同一个基板的封装级方案,延迟和带宽理论上也比跨PCB板更有优势才对。

那么为什么不直接将现在的GPU做得更大,在一颗die上堆更多的计算资源呢(也就是所谓的monolithic)?如果摩尔定律恒定持续,同面积内容纳更多晶体管,则这种方案是可持续的。但在摩尔定律放缓的情况下,要在一颗die上塞下更多的图形计算核心,尺寸和成本都是无法接受的。

目前的显卡主流产品,AMD Radeon RX 6900XT的单die尺寸达到了519mm²,英伟达Geforce RTX 3090则达到628mm²。这种die尺寸也算是不惜血本的代表了,逐渐逼近光刻机可处理的最大尺寸(rectile limit, 858mm²)。未来再给GPU加计算核心,单die方案会有极大难度。这是GPU考虑MCM/chiplet方案的先决条件。

从成本来看,这个问题大概会更明朗。即便不考虑切割大面积晶圆可能造成良率低下的问题,更小die也能带来更高的成本效益。300mm的wafer满打满算造114片22x22mm(接近Vega 64尺寸)片单die;如果切分成更小的11x11mm,即原有每片die可获得4片更小的die,则很大程度减少了晶圆切割边缘浪费,就能造488片die——如果这些die在理想情况下每4片组成一颗MCM芯片,则产量就高了大约8%。

当然这其中并未考虑wafer不同形状的优化方案,也没有考虑制造缺陷之类的问题,而且MCM芯片还需要耗费更多的die来做专门的通讯(比如前文提到Ryzen处理器的I/O die)。但chiplet/MCM能够实现的成本节约仍然是显著的。

EE Times专栏作者Don Scansen前不久撰文提到,“AMD计算出,以Chiplet方法制作EPYC处理器时,会需要比单一芯片多出10%的硅晶圆面积做为裸晶对裸晶(die-to-die)的通讯功能区块、冗余逻辑(redundant logic)以及其他附加功能,但最后整个chiplet形式处理器的芯片成本,比单芯片处理器节省了41%。”

总结一句话,chiplet/MCM本质上是在摩尔定律止步不前的当下,为进一步提高芯片算力,采用的一种控制成本的方案。这里的成本控制实际上还表现在IP的复用和弹性,chiplet有时可以“复制粘贴”的模块化方式,灵活地存在于芯片之上。AMD如今的Ryzen处理器能够如此便捷地堆核心,并且在多线程性能表现出对Intel的碾压优势,和chiplet是分不开的。

GPU应用chiplet的阻碍

不过GPU要应用chiplet却并不是一件简单的事,就好像显卡SLI(或双芯显卡)经过了这么多年,都并未普及开一样。Raja Koduri此前还在AMD的时候提过,GPU可能会采用Infinity Fabric方案(AMD Ryzen处理器的一种互联方案);这在当时被认为是MCM型GPU提出的依据。不过众所周知Raja Koduri后来就离开了AMD,此间规划的延续性是未知的。

df6d6c10-1aa0-11ed-ba43-dac502259ad0.png

2019年英伟达宣布实验室打造一款名为RC18的AI处理器。这颗处理器采用16nm工艺,更重要的是选择了多die解决方案。芯片整体包含36个小型模块,每个模块主要由16个PE(Processing Elements)构成,外加RISC-V核及对应的缓存,另外还有英伟达的GRS(Ground-Referenced Signaling)互联。当时英伟达提到,RC18的存在表明很多技术的可行性,包括可扩展的深度学习架构,以及高效的die-to-die方案。

这颗芯片对于未来的chiplet型GPU而言可能是个重要模板。不过对于图形计算的GPU而言,在同一颗芯片上渲染画面帧,要分配到不同chiplet之上,难度还是会比这类AI芯片更大的。2018年AMD RTG团队高级副总裁David Wang在接受PCGamesN采访时,曾经提到过MCM GPU要实现起来并不简单。“我们在看MCM型的实现方法,但目前尚无法定论,传统游戏图形计算会应用类似技术。”

“从某种角度来看,其实这也就是在单一封装上去做CrossFire(AMD版的SLI方案)。其挑战在于,我们需要能够做到在硬件层面对开发者不可见,否则其发展就不会顺利。”而且,“GPU在NUMA(非一致性内存访问)架构以及一些特性方面有着一定的限制……”,尤其相比CPU,图形计算负载的这种设定会更有难度。

这话的意思是指,第一,如果MCM GPU需要游戏开发者去花额外的时间做开发上的调整,或者增加开发难度,则成为推广MCM GPU的阻碍。第二,不同die之间互联效率、数据一致性问题:包括在chiplet之间切分图形计算管线,以及彼此之间存储访问的差异性,都会给设计带来更高的复杂度。

SLI——即以前的多GPU(或板级多芯片GPU)方案实际上是这两个问题的放大版本。面向开发者时开发难度大;不同GPU之间的工作部署有难度。(而且多GPU方案非常依赖于多层级的系统互联,这个过程中的数据迁移、同步带来的功耗问题也比较大;所以最终互联,达成的有效带宽和每比特消耗的能量都不尽人意)

其中后一个问题也是chiplet技术演进探讨的热门议题,即便已经商用的chiplet CPU产品,依旧在互联方面有着持续改进的空间。

Chiplet即将应用于GPU的几个先兆

MCM GPU真正在这两年呼声特别高也不是没有原因的。其中有几件标志性事件可能表明MCM GPU离我们并不遥远了——即便最早一批MCM GPU可能会是面向数据中心的,并在后续才逐渐下放到游戏和图形计算市场。

首先是Intel这边,Raja Koduri(没错,就是之前AMD的那位)今年一月份在Twitter上发布了一条推文,展示Intel即将推向市场的Xe HPC,如上图所示——有关Xe GPU,此前介绍十一代酷睿的核显文章曾大致谈到过。Xe面向HPC高性能计算时,作为独立GPU形态存在。

这枚代号为Ponte Vecchio的芯片看起来还是蔚为壮观的。就这张图片来看,这颗GPU计算核心可能主要由上下两个chiplet构成,围绕四周的应该是HBM存储,还有I/O或者其他属于Xe特性的组成部分。Chiplet之间可能采用Intel的EMIB(Embedded Multi-die Interconnect Bridge)连接。此前Intel也提过Ponte Vecchio之上应用了Foveros 3D堆叠技术,具体情况未知。不过chiplet在GPU上的应用,或者说真正的MCM GPU,在此也是初见端倪的。

除此之外,2019年底Twitter传出一则泄露消息,称英伟达新一代Hopper架构(Ampere后续架构)GPU将以MCM的形态问世。

dfb08ebe-1aa0-11ed-ba43-dac502259ad0.png

来源:MCM-GPU: Multi-Chip-Module GPUs for Continued Performance Scalability, Nvidia

事实上,英伟达在2017年的ISCA上就发表过一篇题为MCM-GPU: Multi-Chip-Module GPUs for Continued Performance Scalability的paper。虽然这篇paper中提到的方法,只是在英伟达实验室里以模拟的方式将MCM GPU,与单die GPU和多GPU方案进行比较,不过表明英伟达的确是有在探讨其可行性的。

这篇paper有具体探讨不同层级的多芯片方案,比如SLI那样的多显卡方案,以及板级多芯方案、同封装下的多die方案、单die方案等,互联带宽和开销问题;并且认定当代技术储备,比如说substrate尺寸、die之间信号通讯技术(如英伟达的GRS)都正走向成熟,给MCM GPU的实现开创了技术条件。

dfc52dc4-1aa0-11ed-ba43-dac502259ad0.png

dfdda250-1aa0-11ed-ba43-dac502259ad0.png

此外这篇paper提到了几个优化方案,包括引入L1.5 cache,不同chiplet之间线程调度和数据划分方案。从这套方案的结果来看(如上图),虽然某些测试项有不尽人意之处,但整体上MCM GPU能够实现在性能上比多GPU方案的显著领先(且功耗遥遥领先,0.5 pJ/bit vs 10 pJ/bit),而且性能较同计算硬件资源的单die方案,并没有太大损失(而且需要注意,这种单die方案现实中是造不出来的)。而相比目前能够制造的最大单die方案(128 SM单元),英伟达预设中的这套方案有45.5%的性能优势。

文中提及将这样的方案应用在HPC大规模集群中,能够极大提升性能密度,系统层级减少机柜数量,以及对应的系统级网络、通讯规模变小。最终实现通讯、供电、制冷系统的耗电量极大节约。只不过这篇paper,整体上更多仍停留于纸面和模拟。

dff01714-1aa0-11ed-ba43-dac502259ad0.png

最后AMD作为已经在CPU之上推开chiplet的市场玩家,今年年初浮现一则其2019年申请的专利,名为”GPU Chiplets using High Bandwidth Crosslinks”。这项专利的很大一部分,旨在解决MCM GPU在开发层面困难的问题。

这项专利提到系统中包含一个CPU。它在通讯上与GPU chiplet阵列的第一颗chiplet连接。CPU和这颗GPU chiplet通过一条总线连接;而这颗GPU chiplet和后面的chiplet则通过一种passive crosslink连接。这里的passive crosslink实际上是个被动interposer die,专门用于chiplet之间的通讯,以及负责将SoC功能切分成更小的chiplet。(如上图所示)

e004dbc2-1aa0-11ed-ba43-dac502259ad0.png

针对存储一致性问题,每颗GPU chiplet都会有其各自的LLC(last-level cache),也就是L3 cache。LLC跨所有的chiplet实现一致性,也是实现跨chiplet存储一致性乃至提升MCM GPU效率的关键。

这套系统中,仅第一颗GPU chiplet接收来自CPU的请求,这样一来对CPU而言,GPU就好像是传统的单die方案一样,对图形计算开发也就比较友好了。未知AMD是否已将这项专利付诸实现,GPU本身内部的通讯延迟理论上可能会更高。

不过如前所述,MCM GPU最早应用的理论上可能还是数据中心、HPC这些领域。毕竟如英伟达在paper中所述,这样的设计对于数据中心具备了更天然的替代优势。而在技术逐步准备就绪之际,MCM GPU的出现的确只是时间问题,包括下放到游戏市场。Intel、AMD和英伟达,哪家将率先踏出这一步,也是值得拭目以待的。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19143

    浏览量

    229021
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4699

    浏览量

    128666
  • MCM
    MCM
    +关注

    关注

    1

    文章

    67

    浏览量

    22323

原文标题:GPU越做越大,快到极限了怎么办?

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    企业上云后还需要数据库运维吗?真实答案看过来!

    企业上云后还需要数据库运维吗?企业上云后,数据库运维仍然是必不可少的。尽管云计算带来了许多便利和自动化功能,但数据库作为企业核心数据存储和管理的关键组件,其运维工作依然需要高度重视。以下是UU云小编对这一观点的详细阐述:
    的头像 发表于 11-08 10:02 90次阅读

    为什么FPGA属于硬件,还需要搞算法?

    交流学习,共同进步。 交流问题(一) Q:为什么FPGA属于硬件,还需要搞算法? 刚入门准备学fpga但一开始学的是语法,感觉像是电路用软件语言描述出来,fpga不用会pcb
    发表于 09-09 16:54

    含有内部ESD保护的运放,外部保护还需要加吗?

    含有内部ESD保护的运放,外部保护还需要加吗?因为加外部ESD保护有一定的漏电流存在, 这个会使电路失去一定的精度
    发表于 09-04 06:54

    畅玩《黑神话:悟空》,除了“官配”硬件还需要注意这些......

    畅玩《黑神话:悟空》,除了“官配”硬件还需要注意这些......
    的头像 发表于 08-30 14:58 369次阅读
    畅玩《黑神话:悟空》,除了“官配”硬件<b class='flag-5'>还需要</b>注意这些......

    有了MES、ERP,为什么还需要QMS?

      有了MES、ERP,质量管理为什么还需要QMS? ​在制造业,质量管理始终是企业管理中永恒的主题。品质管理要想做得更好,企业必须掌握足够多、足够有用的数据和信息,实现质量管理信息化。很多中小企业
    的头像 发表于 08-02 10:09 241次阅读
    有了MES、ERP,为什么<b class='flag-5'>还需要</b>QMS?

    ESP-IDF Tools Offline5.0下的离线安装包,为什么安装时还需要从github中下载?

    如题 我都已经下载的是离线的安装包了为什么安装时还需要从github中下载???? 半个小时了 才下载2%
    发表于 06-13 08:14

    使用esp32c3开发matter时,开发好的产品还需要走matter官方认证流程获得认证吗?

    使用esp32c3开发matter时,(SDK使用esp-matter),使用这个芯片开发matter的话,开发好的产品还需要走matter官方认证流程获得认证吗?询问其他人时他们说是需要经过一个
    发表于 06-11 07:46

    在freertos中,每个任务都是一个死循环,那么还需要使用看门狗吗?

    在freertos中,每个任务都是一个死循环,那么还需要使用看门狗吗?该怎么使用?
    发表于 05-07 06:55

    请问risc-v中断还需要软件保存上下文和恢复吗?

    risc-v中断还需要软件保存上下文和恢复吗?
    发表于 02-26 07:40

    #2024,立Flag了嘛? #学习spinal HDL还需要学习对应的Scala语言

    学习spinal HDL还需要学习对应的Scala语言,但是spinal HDL直接贴近硬件编程,不知道对于学习spinal HDL有什么好的建议?
    发表于 01-21 11:11

    aducm410微处理器还需要接外部晶振和复位电路吗?

    aducm410微处理器还需要接外部晶振和复位电路吗?
    发表于 01-11 07:23

    1200控制V90PN,极限开关接到伺服上,那PLC这边还需要组吗?

    1200控制V90PN,极限开关接到伺服上,那PLC这边还需要组吗 接到V90上,假如绝对定位碰到极限,伺服自己会停止吗
    发表于 01-09 08:26

    当使用外接电阻确定LTM4676/LTM4677的输出电压时,是否还需要通过I2C总线对其进行控制?

    当使用外接电阻确定LTM4676/LTM4677的输出电压时,是否还需要通过I2C总线对其进行控制?谢谢。
    发表于 01-08 08:02

    退出空载条件后,APNOLOAD和VARNOLOAD是否还需要清零?

    空载条件后,APNOLOAD和VARNOLOAD是否还需要清零,还是说只是上电进行一次清零。 谢谢。
    发表于 12-26 07:14

    数模转换芯片AD7991配置完断电后,还需要再次配置吗?

    这个芯片在使用时,有一些配置寄存器,用于配置芯片的工作方式。这个寄存器,配置完断电后,还需要再次配置吗? 这个芯片有两个型号—0和—1,配置时,地址不一样。在芯片上没看有标识,怎么判断是哪个型号的?
    发表于 12-22 08:06