绝大多数CPU需求高的应用,都不是实时应用。
比方说编译代码,无论你是四核还是十六核,统统都能跑满,可以说是CPU需求很高的应用。但编译代码这种事,你一分钟编完跟四分钟编完,其实也只是量变不是质变。虽然一定程度影响生产力,但编译慢些无非就是多喝杯茶多刷刷知乎,并不会使得工作无法进行。
倒是GPU需求高的应用基本都是实时的,比如视频播放,你不能在一帧的时间内把一帧的数据解码出来,那就是白搭。4K视频你卡顿了那就是根本没法看,只能提升硬件性能。哪怕我一年只看一部片子,它卡顿了还是没法看。
实时应用对性能的需求更迫切,其对性能提升的感知更明显。也就是说,事实上GPU的提升往往就是感知更强。而CPU性能的提升属于那种润物细无声的默默改变,而不会有质的飞跃。
事实就是:我使用性能相差四倍的CPU来写代码,实际工作流也不会存在非常明显的改变。因为写代码这种工作并不是实时性要求较高的工作。
所以,可以预见的是:CPU的进一步提升,对于轻度用户来说并不会有非常明显的感知,而且会越来越不明显,比如文字工作,编程工作,画图工作等等。
而一些实时性较高的场合会更明确的体会到性能提升带来的结果,比如8K视频解码,比如4K的全屏3D游戏渲染等等涉及到多帧动画视频的工作。
DDR5会进一步提升集成显卡的性能,使得未来的集成显卡能够带动早年间的大型3D游戏。但对CPU性能的提升不会有非常明显的感知,因为对于图片工作以及文字工作者来说,CPU的性能确实需求不大。对于视频工作以及游戏用户来说,依然也是对GPU的性能需求大于对CPU的性能需求。
至于M1系列,虽然CPU表现还不错,但一方面缺乏强大的GPU,二方面缺乏需求强大GPU的游戏与生产力应用,所以个人认为,它实际上很难对PC造成很大竞争。
且不说M1是不是非常强,就算M1的CPU真的是顶级的,现在CPU的性能也根本不是影响用户体验的主要瓶颈,感知最明显的其实就是GPU性能。而M1的GPU性能并没有特别值得说道的地方。
所以对于等等党来说,你唯一需要等的就是显卡价格回归合理价位,至于CPU体系其实,目前主流的真的都已经足够用了。
——除非,将来发明某种新的技术,让CPU也大量参与到显卡渲染等实时性要求较高的运算当中去。才会对CPU性能需求提升。
一个系统,有硬盘IO,寻道时间,GPU渲染,内存大小,等等很多瓶颈,相对来说,CPU可能是最难造成瓶颈的那一个。所以,不用过分在意CPU性能。其他很多环节对最终体验的影响可能都比CPU更大。
下图是A站跑的SPEC2017
上图我们可以看到一些重点。
一个是zen3的成功。5600x性能比10700K强,和11700k也基本打平。5950x战3代。
另一个是存储系统的重要性。
首先是大L3的重要性。5600x到5800x,运算单元提升了33%,但是性能提升只有整数19%,浮点9.6%。而5800x到5900x,运算单元提升了50%,性能提升是整数42%,浮点32%。理论上,多线程性能是线程越多,打折越严重。而5900x核心更多,但是性能提升却打了更少的折扣,因为5600x到5800x的缓存没有变,而5800x到5900x提升了100%。
然后是内存带宽的巨大影响。测试结果中,最突出的是M1 Max的浮点性能,一骑绝尘。因为m1 max有400GB/S的内存带宽,远远超越DDR4-3200M的51.2G带宽。A站之前的测试中,cpu能利用到的带宽是200G,4倍于x86平台。而12900k在内存从DDR4-3200更换为DDR5-4800后,内存带宽提升了50%,性能整数提升了31%,浮点提升了37%。这个提升比例,几乎相当于5800x到5900x的提升。而5900x到5950x,运算单元提升了33%,但是性能提升是整数15%,3.4%。可以看到,在5600x,5800x上就可以看到内存吞吐量对性能的限制了,到5950x的浮点,瓶颈已经完全在内存吞吐性能上了。5950x是16核心,双通道,amd的服务器端是64核心,8通道,可以估计内存带宽依旧是重大瓶颈。
解决办法就是更大的L3,更多的内存位宽(更多通道),更高的内存频率。DDR5能带来多少提升?对于消费级的顶端,DDR5内存起步就能带来35%的提升,更高的频率能带来的提升估计可以到50%以上。对于日常应用,可以说没有任何提升。因为对于以单线程、低运算需求为主的日常应用,内存上并没有显著瓶颈。
另外对于intel的傲腾,这不是革命。这从开始到结束都是个失败的产物。在推了几年之后,傲腾已经彻底从消费市场销声匿迹。未来没有傲腾。
傲腾声称它的优势是更快的速度和更高的耐用性。我们看一看intel卖的64G傲腾的耐用度,是365TBW。对于NAND闪存,SLC耐用度是10000次左右,MLC是3000次,TLC是1000次左右。现在1T的TLC耐用度是600TBW,换算到64G的SLC,耐用度大约是375TBW。好了,傲腾就是个SLC的SSD。
傲腾引以为傲的读写速度,面对当前优秀的消费级PCIE4.0的SSD都没有显著优势,就更不要说去占用内存插槽了!即使是8通道DDR5也是喂不饱现在的顶级处理器的。
至于说计算机架构革命,那是不存在的,不要相信intel的ppt。现在联想的刃9000 2022低配是16G DDR5配1T PCIE4.0,SSD的读取速度是7GB/S以上,现在系统关机直接把内存整个写入SSD,开机整个读进来,需要多久?2.3秒。就算是高配的32G,64G,也就需要4.6秒,9.1秒。即使是512G内存,也只需要1.5分钟,对于下一代pcie5.0 SSD,需要40秒。傲腾拿什么来革命?
傲腾对比RAM,在随机读写和带宽上有量级的差距。对比SSD,没有量级的优势,但是成本有量级的劣势。就是个笑话。
至于未来的CPU性能,这里放一下IRDS(INTERNATIONAL ROADMAP FOR DEVICES AND YSTEMS)的预测:
DDR5主要的规格提升有几个:
就我个人看法,3-5年内也许会有一波PC的革命性性能提升,但与DDR5关系不大。
这几年来,存储介质有两个大的变化:主存方面是傲腾的出现,辅存方面则是NVMe固态的流行。
傲腾的出现,是终于有了一款性能接近DRAM,但是成本更低容量更大,最重要的是断电后数据不会丢失的存储介质。这意味着PC可以一直保持全部应用打开,把运行应用所需的数据和指令一直保存在主存中。不再需要像现在这样为了避免关机、重启后主存数据丢失而不得不每次关闭应用的时候把数据保存到辅存上,开机、打开应用时从辅存重新加载程序指令和数据进主存,每次打开(或者应该叫切换)应用,即使经过多次关机重启,都和现在切换不同的应用一样迅速,并且保持着你上次使用时的场景,无需重新打开一大堆文件、网页。
这一点,在企业级应用已经有了非常明显的改进。不止一份傲腾PMem的使用案例提到,服务器更新、故障等原因导致系统重启恢复服务的时间,从原来的数十分钟提升到几分钟,甚至数十秒。剩下的问题是傲腾的产能什么时候提升上来,在满足企业市场需求后可以以合理的价格在消费级市场普及开来,主流操作系统和应用能针对傲腾PMem的这个特性进行优化。
NVMe固态的流行,使得辅存的访问带宽开始可以和内存读取带宽相媲美。DDR4双通道带宽大概在40-50 GB/s左右,而最新的PCIe 4.0的NVMe固态已经接近7 GB/s了,接近主存带宽的10%~20%。这意味着以前传统的先把数据从辅存载入内存,其它设备再从内存读取数据的方式非常浪费主存带宽。
因此不管是传统PC的Win,还是主机市场的PS5/XSX,都提出了直接存储访问技术,GPU直接从辅存载入游戏数据,节省了相当可观的主存带宽和容量。
至于传统的CPU和DRAM,我并没有看到能带来革命性提升的新技术出现。
CPU虽然这几年核心规模提升不小,但效果并不算好。能直接利用上这么多核心的应用不多,这并非说开发商偷懒没有对多线程进行优化,而是大部分应用的运行逻辑并不需要处理大量数据,也没有数量很多的需要同时运行的任务。即使进行了多线程优化也不会有明显效果。更重要的一点是:除非是数据量大算法又足够复杂导致在GPU上执行效率很低,否则哪个开发者这么想不开放着GPU几千上万个计算单元,几百GB/s甚至上TB/s带宽的显存不用,去用撑死不超过200个核心,八通道主存带宽也才200 GB/s的CPU去搞计算?
而可以预见的将来,单核性能的提升不会太大。受限于工艺和功耗,频率不可能有大幅度提升,IPC提升艰难——综合两位数的提升就非常喜人了,然而传统应用的IPC其实几乎没有提升,哪怕按照10%提升计算,十年内再迭代更新三五代架构,也不过提升30~60%而已。
M1能大幅提升IPC的前提是苹果宁可放弃一部分用户和开发者,在兼容性和性能出现矛盾的时候放弃兼容性,只为了自己的目标用户的使用场景去做针对性优化。这是PC厂商无法学习跟随的策略——除非它们完全改变自己的企业文化、产品战略,然后还能找到一批和苹果用户重合度很低,又像苹果用户那样愿意而且有能力贡献足够利润,数量广泛,需求简单的用户。
DRAM则是另一种情况,DRAM的结构太简单了,一个电容+一个晶体管就是一个cell,简单意味着很难有变化—性能提升、容量增加都是变化。唯一的方法是使用新的制程工艺。除此之外,就只能在接口上做文章,这才有了DDR、LPDDR、GDDR、HBM这些不同的DRAM。而且除了DDR以外的其它几种形式,都是和*PU焊接绑定的,为了带宽性能牺牲了非常重要的扩展性。也许将来的PC,会采用HBM作为高速主存,前提是有别的方案解决扩展主存容量的问题——例如普及傲腾PMem。