同样价格,面对AVX512应用,AMD直接以翻倍的核心数量碾压过去,性能依然不落下风。
而非AVX512应用嘛……
状况就是这么个状况。
AVX全称是Advanced Vector Extension,高级矢量扩展。什么是矢量?在计算机里面就是数组。而AVX又是SIMD指令集(Single Instruction,Multiple Data,单指令多数据),所以AVX指令都是对一个多维数组做相同处理的指令。
既然是数组,那么具体是什么数据的集合?32位的整数和单精度浮点数所能表示的范围以及精度,对于我们日常能遇到的绝大部分数据来说都是足够的。要是32位不够,还有64位的Int64、双精度浮点数,这还不够用的情况就真的太少了。512位意味着一个16维的32位数组,或者8维的64位数组。对于单个矢量来说,有点太大——毕竟计算机中最常用的两种矢量:空间坐标和RGB颜色,都不过是三维矢量(也所以128bit,4个32位数的SSE指令很多多媒体应用都用到;256bit,4个64位数或者8个32位数的AVX2指令用的就不多了)。对于海量标量数据组成的数组来说,则是有点太小。毕竟今天显示设备最常见的分辨率是FHD,1920×1080的分辨率,就有2M+像素,6M+子像素。以Intel家最顶级CPU单个Die不过28个核心,两个AVX512单元,一个时钟周期也不过能处理16×2×28=896个数据。
同样是以SIMD方式处理数据的GPU,2011年AMD的HD 6850,2012年NV的660就已经是960个处理单元——当然,GPU的频率比CPU低很多。但今天旗舰级别的GPU,都是4000+的处理单元,NV的Volta更是多达5120个CUDA单元,4~5倍的处理单元,加上1.2G以上的工作频率,足以弥补频率上的差距,毕竟28核的CPU,执行AVX512指令也不过3G不到,3倍不到。
此外,顶级显卡动不动就600+GB/s的显存带宽,Radeon VII更是高达1TB/s,更适合处理海量数据。而今天CPU的搭配的DDR4内存,就算超频到DDR 4000,单通道带宽不过32GB/s,要达到600+GB/s的带宽,怕不是要20通道。
当然,GPU有规模优势和带宽优势,CPU也有其它优势,延迟低,编程相对简单,对数据进行复杂处理时效率高等等,只是如果对数据进行复杂处理,Intel家28核的AVX512又不如AMD的64核;而当数据量足够海量时,大部分场景中,GPU也可以把复杂的处理分解成多步简单处理而不会导致太严重的效率下降。一边是更多核心的CPU,另一边是更大规模的GPU,相对来说少量核心的AVX512可以说是在夹缝中生存。事实上,AVX512最早出现在2016年发布的Xeon Phi x200加速卡上而非CPU。只是Xeon Phi最高端的7290理论算力也不过3.5 TFLOPS不到,比NV家同期的Tesla P100的4.7~5.3TFLOPS还是差了不少。
而AMD是CPU、GPU两条腿走路,也一直在推OpenCL,CPU去推AVX512那就是左右互搏。虽然OpenCL作为业界标准,多家巨头支持,只是三个和尚没水喝,大家互扯后腿,还不如只有NV一家推动的CUDA普及度高,这又是另外一回事了。如果说早期AMD的GPU双精度性能残废,18年的MI50/MI60的双精度性能都是单精度性能的1/2,MI60的双精度浮点理论性能达到了7.3 TFLOPS。虽然不能排除将来AMD因为OpenCL不给力,Radeon Instinct系列卖不出几块,等Intel强推之下AVX-512普及后在CPU上跟随Intel,加入AVX-512的实现的可能。不过现在AVX-512并未普及的情况下,我想不出任何理由AMD为什么要在自己CPU上加一个占用大量晶体管又没几个人用,加上了性能还是比自家显卡差,功耗又高影响堆核的指令集。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有