GPU巨头,拼什么?
GPU巨头,拼什么?在本文中,我们将深入探讨他们的架构。让我们剥开层层,看看有什么新内容、它们有什么共同点,以及这些对普通用户意味着什么。01GPU整体结构:从上到下让我们从本文的一个重要方面开始——这不是性能比较。相反,我们正在研究GPU内部的所有内容是如何排列的,检查规格和数据,以了解AMD、英特尔和NVIDIA在设计图形处理器时所采用的方法差异。我们将首先了解使用我们正在研究的架构的最大可用芯片的整体GPU组成。需要强调的是,英特尔的产品并不针对与AMD或NVIDIA相同的市场,因为它在很大程度上是一款中档图形处理器。这三者的尺寸不仅彼此不同,而且与使用先前架构的类似芯片也有很大不同。所有这些分析纯粹是为了了解这三个处理器的底层到底是什么。在分解每个GPU的基本部分(着色器核心、光线追踪功能、内存层次结构以及显示和媒体引擎)之前,我们将检查整体结构。一、AMDNavi31按字母顺序排列,第一个出现的是AMD的Navi31,这是他们迄今为止发布的最大的RDNA3芯片。与Navi21相比,我们可以看到他们之前的高端GPU的组件数量明显增长......着色器引擎(SE:ShaderEngines)容纳的计算单元(CU:ComputeUnits)较少,为16个,而不是200个,但现在总共有6个SE,比以前多了两个。这意味着Navi31拥有多达96个CU,总共配备6144个流处理器(SP:StreamProcessors)。AMD已经对RDNA3的SP进行了全面升级,我们将在后面讨论。每个着色器引擎还包含一个处理光栅化(rasterization)的专用单元、一个用于三角形(triangle)设置的图元引擎(primitiveengine)、32个渲染输出单元(ROP:renderoutputunits)和两个256kBL1缓存。最后一个方面现在大小增加了一倍,但每个SE的ROP计数仍然相同。AMD也没有对光栅器(rasterizer)和原始引擎(primitiveengines)进行太大改变——所称的50%改进是针对整个芯片进行的,因为它的SE比Navi21芯片多了50%。然而,SE处理指令的方式发生了变化,例如更快地处理多个绘制命令(multipledrawcommands)和更好地管理管道阶段(pipelinestages),这应该会减少CU在继续执行另一个任务之前需要等待的时间。最明显的变化是在11月发布之前引起最多谣言和八卦的变化——GPU封装的小芯片方法。凭借在该领域多年的经验,AMD选择这样做在某种程度上是合乎逻辑的,但这完全是出于成本/制造原因,而不是性能。我们将在本文后面更详细地讨论这一点,所以现在我们只关注哪些部分在哪里。在Navi31中,最终层缓存的内存控制器及其相关分区位于主处理器(GCD,GraphicsComputeDie)周围的单独小芯片(称为MCD或MemoryCacheDies)中。由于需要提供更多数量的SE,AMD也将MC数量增加了50%,因此GDDR6全局内存的总总线宽度现在为384位。这次InfinityCache总量减少了(96MBvs128MB),但更大的内存带宽抵消了这一点。二、英特尔ACM-G10接下来是Intel和ACM-G10芯片(以前称为DG2-512)。虽然这不是英特尔生产的最大的GPU,但它是他们最大的消费类图形芯片。该框图是相当标准的排列,尽管看起来更类似于NVIDIA的而不是AMD的。共有8个渲染切片(RenderSlices),每个渲染切片包含4个Xe核心,总共512个矢量引擎(VectorEngines:相当于AMD的流处理器和NVIDIA的CUDA核心)。每个渲染切片中还包含一个基元单元、光栅器、深度缓冲处理器、32个纹理单元和16个ROP。乍一看,这款GPU似乎相当大,因为256个TMU和128个ROP比RadeonRX6800或GeForceRTX2080中的数量还要多。然而,AMD的RNDA3芯片拥有96个计算单元,每个计算单元有128个ALU,而ACM-G10总共有32个Xe核心,每个核心有128个ALU。因此,仅就ALU数量而言,英特尔Alchemist驱动的GPU的大小是AMD的三分之一。但正如我们稍后将看到的,ACM-G10的大部分芯片都交给了不同的数字处理单元。与英特尔通过OEM供应商发布的首款AlchemistGPU相比,该芯片在组件数量和结构排列方面具备成熟架构的所有特征。三、英伟达AD102我们完成了对NVIDIAAD102不同布局的开场概述,这是他们第一个使用AdaLovelace架构的GPU。与它的前身AmpereGA102相比,它看起来并没有什么不同,只是大了很多。就所有意图和目的而言,确实如此。NVIDIA使用图形处理集群(GPU:GraphicsProcessingCluster)的组件层次结构,其中包含6个纹理处理集群(TPC:TextureProcessingClusters),每个集群包含2个流式多处理器(SM)。这种安排对于Ada来说并没有改变,但总数肯定已经改变了……在完整的AD102芯片中,GPC数量从7个增加到12个,因此现在总共有144个SM,总共有18432个CUDA核心。与Navi31中的6144个SP相比,这个数字似乎高得离谱,但AMD和NVIDIA对其组件的计数方式不同。虽然这大大简化了问题,但1个NVIDIASM相当于1个AMDCU——两者都包含128个ALU。因此,Navi31的尺寸是英特尔ACM-G10的两倍(仅ALU数量),而AD102的尺寸是英特尔ACM-G10的3.5倍。这就是为什么当芯片在规模上有如此明显的差异时,对它们进行任何直接的性能比较是不公平的。然而,一旦它们进入显卡、定价并上市,那么情况就不同了。但我们可以比较的是三个处理器中最小的重复部分。02着色器核心(ShaderCores):走进GPU的大脑从整个处理器的概述开始,现在让我们深入了解芯片的核心,看看处理器的基本数字处理部分:着色器核心。这三个制造商在描述他们的芯片时使用不同的术语和短语,特别是在概述图时。因此,在本文中,我们将使用我们自己的图像,具有常见的颜色和结构,以便更容易看出相同和不同之处。一、AMDRDNA3AMDGPU着色部分内最小的统一结构称为双计算单元(DCU:DoubleComputeUnit)。在某些文档中,它仍然称为工作组处理器(WGP:WorkgroupProcessor),而其他文档则将其称为计算单元对(CUP:ComputeUnitPair)。请注意,如果这些图中未显示某些内容(例如常量缓存、双精度单元),并不意味着它们不存在于体系结构中。在很多方面,整体布局和结构元素与RDNA2相比并没有太大变化。两个计算单元共享一些缓存和内存,每个计算单元包含两组32个流处理器(SP)。第3版的新增功能是,每个SP现在容纳的算术逻辑单元(ALU:arithmeticlogicunits)数量是以前的两倍。现在,每个CU有两组SIMD64单元,每个组有两个数据端口——一个用于浮点、整数和矩阵运算,另一个仅用于浮点和矩阵运算。AMD确实针对不同的数据格式使用单独的SP,RDNA3中的计算单元支持使用FP16、BF16、FP32、FP64、INT4、INT8、INT16和INT32值进行操作。使用SIMD64意味着每个线程调度程序可以在每个时钟周期发出一组64个线程(称为wavefront),或者可以共同发出两个32个线程的波前。AMD保留了与以前的RDNA架构相同的指令规则,因此这是由GPU/驱动程序处理的。另一个重要的新功能是AMD所谓的AI矩阵加速器的出现。与我们很快就会看到的Intel和NVIDIA的架构不同,它们并不充当单独的单元——所有矩阵运算都利用SIMD单元,并且任何此类计算(称为波矩阵乘法累加,WMMA:WaveMatrixMultiplyAccumulate)都将使用完整的64个ALU组。在撰写本文时,人工智能加速器的确切性质尚不清楚,但它可能只是与处理指令和涉及的大量数据相关的电路,以确保最大吞吐量。它很可能与NVIDIA的Hopper架构中的张量内存加速器具有类似的功能。与RDNA2相比,变化相对较小——较旧的架构还可以处理64个线程波前(又名Wave64),但这些是在...PC版:https://www.cnbeta.com.tw/articles/soft/1369821.htm手机版:https://m.cnbeta.com.tw/view/1369821.htm
在Telegram中查看相关推荐
🔍 发送关键词来寻找群组、频道或视频。
启动SOSO机器人