关于Intel最新一代高端工作站CPU和平台,我已经在《单路为王 IntelXeon W-3400 、2400工作站平台预览》和《Dell Precision 7960 Tower 工作站:模块化的传承与提升》两篇中有过介绍。
最近这几年,我写过显卡、SSD存储方面的一些评测,但确实好久没有全面系统地做过CPU性能测试。我在日常工作中也会遇到一些性能分析的任务,但主要是帮助客户把工作站等系统在实际应用中发挥出正常水平,而不只是为了跑分。比如《神油补丁测试:老版SOLIDWORKS + RTX A/T 系列显卡性能问题解决》,就是出于解决问题而搞出来的。
本文主要目的
- 了解最新一代Xeon W-3400(4代)性能水平,对比之前的 2 代Xeon Scalable x2xx平台双CPU工作站,在各种计算应用中性能提升如何?
- 双CPU比单CPU能快多少?观察在不同应用中的性能差距;
- 结合各行业领域特点,分析多核CPU性能扩展瓶颈——在一些应用中使用多进程+多线程的意义。
位于Precision 7960 Tower工作站上的LGA-4677 CPU插座,我测试的Intel Xeon w9-3495X就是安装在这上面。
作为Intel Xeon w-3400系列中的顶级型号,w9-3495X处理器拥有56个物理核心,112个框框(逻辑线程)。
以上是我测试使用的Dell Precision 7960 Tower工作站,运行本文的基准测试部分时,只安装了一块 NVIDIA RTX A4000 专业显卡。后续还想给大家分享更多行业应用测试的结果,有些会用到多GPU,比如4K/8K视频编辑调色等。
细心的朋友可能发现了,我搭配测试的显卡并不是最新、最高端的型号,确实我手头没有RTX 6000 Ada、RTX A6000那些。不过,我也要感谢能暂时拥有的这些配置,毕竟本次测试的重点是对比CPU性能,更确切地说——主要是多核性能。
当我最初有2颗16核的Xeon Gold 6242 CPU作为上一代参照平台时,曾经希望能借来1颗Xeon w9-3475X(36核)或者w7-3465X(28核)用于对比;而最终却拿到了Xeon w9-3495X,要是能再有2颗Xeon Gold 6258R就更好了:)
如上表,2颗Xeon Gold 6242 CPU一共32核,TDP功耗加在一起是300W,其性能低于56核、350W的Xeon w9-3495X是正常的——在大家接下来看测试结果之前我有必要说明这一点。另外,我简单依照核心数、基础频率的比例关系,假定Xeon 6242的性能水平为100%,算出一个纸面上的6258R理想多核性能比率168%(28核相对16核)。但大家也知道,在不少的工作站应用中,多线程性能并不会随着CPU核心的增加而完全线性提升,所以这偏高的估值,也只是作为一个条件有限情况下的参考而已。
测试平台
如上表,我将要对比Xeon Gold 6242单CPU、双CPU和Xeon w9-3495X三款配置的性能。
受限于手头的硬件,我在Precision 7960工作站上配置了4通道共64GB DDR5-4800内存(满配支持8通道);于是我在上一代Precision 7920上使用了8条8GB DDR4内存,双路时每颗CPU对应4个DIMM通道;而在单Xeon Gold 6242 CPU时,这8条内存我是按Dell工作站手册的建议来安装的(如下图,保持64GB总容量不变)。
注:理论上看可能因为没有达到最高配置而影响性能发挥,但实际情况中许多客户也不是各方面都达到最高满配的,所以一样有参考价值。
M.2 NVMe SSD我在新老机型上使用的都是1TB,型号虽有不同——但即使配置相同的新型号固态盘性能也不一样。因为PCIe 4.0 SSD在新平台能充分发挥,而老机型上只能运行在PCIe 3.0带宽下。我在下文中列出的测试项目会尽量避开SSD、显卡这些对CPU性能的干扰。
当我们在Precison 7920 Tower 工作站上配置单CPU+8条内存时,手册里会建议先插满6个通道,然后再加2条
(图片点开后可放大查看,以下同)
如上图,从2007年开始推出的LGA-3647 Xeon每颗CPU是6通道内存控制器,在插8条内存时BIOS里也能显示为6通道(但此时并不是完全对称的)。
工作站综合 BenchMark、测试细节解析
本文使用的测试软件SPECworkstation 3.1,几乎是工作站领域具备权威性的综合BenchMark唯一选择。我已经有20多年使用SPECviewperf(针对工作站显卡应用)的经验——最近两次关于该测试工具的更新讨论如下:
《SPECviewperf 2020基准测试更新:Quadro专业显卡再排座次》
关于测试整机的SPECworkstation 3.1,其前身为SPECwpc。我在《Optane SSD 900P 评测(2):比拼4x 闪存NVMe RAID0》曾经用于测试工作站的存储子系统,并给出过这样的评价——
“其综合成绩受磁盘I/O子系统性能影响较大,因此看www.spec.org网站公布的测试结果,有点像拿SSD来辅助“跑分”的比赛,看谁的盘快、看谁盘配的更多:)”
所以,我这次会排除其中的图形(源自SPECviewperf)和SSD测试项目,只对比CPU。
如上图,在SPECworkstation 3.1测试中涵盖了媒体和娱乐、产品研发、生命科学、能源、金融服务等行业的应用,具体的CPU测试负载项目我也用红圈标出来了。
上面是一份SPECworkstation测试结果的片段截图,本文主要挑每个行业领域中的CPU测试项目(CPU综合得分、具体单项得分)进行对比。
我想说接下来这个表可能才是本文的核心,甚至我为此花的精力比后面那些性能数据要多,不知您是否认同?
上表中部分描述参考了Standard Performance Evaluation Corporation网站上的介绍
而我在这里加入自己花时间研究、分析的重点,是每一项测试的CPU负载类型:单线程、多线程,还是多线程+多进程。
- 通用操作类别中的测试,以单线程为主。7zip压缩看上去用到了多线程,实际效果请看后面对比;Python测试中确实包含一个多线程的项目;
- 媒体和娱乐(DCC)、金融服务计算,还有能源行业中的Convolution(卷积向量化)测试,都是单一进程多线程的任务。按照我的经验,图像渲染、视频编码这些应用,相对适合发挥出超多核CPU的性能(但不是每一次“拍脑袋”都会准?)所以才要看实际测试结果。
- 产品研发(CAE)、生命科学,以及能源行业的大多数测试项目,在SPECworkstation基准测试中都是采用多进程+多线程来运行的。默认设置为每个应用进程调用16线程,相当于超过8核16线程的CPU,应该就会并行跑多个进程来发挥处理器的潜力。
正是因为部分应用的特点,在单一进程调用线程数过多时效率不够好,所以就借助高性能计算的思想,把任务拆分运行。我看到SPECworkstation会把Microsoft HPC Pack组件也装上,里面有些mpi(Message Passing Interface)的东西,在部分测试运行时会调用。以2颗16核的Xeon 6242 CPU为例,如果能优化地把每2个进程分别运行在一颗物理CPU上,应该还能规避NUMA(非一致性内存访问)的性能影响。
制造业中的CAD(计算机辅助设计),其中许多三维图形操作都是单线程,总体上只能发挥出1-2个CPU核心;而产品研发(CAE)才是多核CPU的用武之地,比如本次测试中包含的结构有限元分析、流体力学计算。
SPECworkstation的CPU测试集里面多为开源软件,或者免费公开的BenchMark子项目;相比之下,ANSYS(含Fluent)、Altair、MSC等几大商业CAE软件巨头,他们对新硬件(包括超多核CPU)的优化和发挥通常更好一些,所以本文只是提供一个参考。
- 生命科学行业,本次测试主要包含分子动力学(用于制药等领域)、医疗影像处理计算两部分。
- 能源行业,包括一部分地震数据处理相关的。“人造地震波”并收集数据进行解释的目的,是为了分析地质结构,探测地下的油气资源。
在此我也列举几家常用的地震资料解释平台(商业软件):主要有哈里伯顿(Halliburton)的LandMark,斯伦贝谢(Schlumberger)的GeoFrame,还有一部分在用帕拉代姆(Paradigm)的Epos等。
测试结果:如何看待个别的跑分异常
本次SPECworkstation测试的结果,我以性能得分比率的形式展现给大家,将2颗Xeon Gold 6242 CPU的性能当作“1”,再列出单Xeon 6242、Xeon w9-3495X得分的倍数进行对比。
我没有做一些特殊优化,不列出BenchMark基准测试具体结果是为了避免不必要的麻烦。不过,我承诺在后续的具体应用软件测试中,会直接呈现结果数值。
首先看各领域的CPU综合得分:
- “通用操作”以单线程测试为主,所以单/双路、不同型号CPU拉不开差距比较好理解;
- 余下五大行业,单/双Xeon 6242 CPU的差别都比较明显,有些领域2颗CPU比1颗都接近翻倍了;只是媒体和娱乐(DCC)反而差距相对小,估计与具体测试项目有关。
- Xeon w9-3495X 56核相对于2颗16核的提升,除了生命科学一项的综合得分有点不够理想(待进一步分析),另外几个行业都达到了1.84-1.99倍的水平,大家还记得我在前面列出的那个168%的Xeon 6258R理想值(按核心数线性估算)吗?
以上综合得分,对硬件制造商、发烧友和分析师是有用的;但具体到运行某一种或几种软件的工作站用户来说,每个应用软件的测试表现,才有更多的参考价值。下面我们来看单项测试:
在媒体和娱乐的3项测试中,说实话Blender渲染让我感觉有点意外?单颗Xeon 6242就能达到双CPU性能的89%,而56核的Xeon w9-3495X也只是跑到了2颗16核的1.33倍。该测试生成的2张渲染图如下:
作为一个整体上有些复杂的综合性BenchMark,SPECworkstation的更新相对不快。我之前在《让 45W TDPCPU 稳跑 75W 的秘密:Blender 渲染测(含Optix去噪点》等2篇评测中玩过Blender,带着这次的疑问,我想后续进一步用较新版本软件实际测试再来次评估,看该软件是否对较多的CPU核心数支持不够好?
CAE领域的3项测试表现也有些不同,Calculix和WPCcfd从单CPU到双CPU的提升幅度都很理想;但rodiniaCFD流体力学测试则有些相反——配2颗CPU在这里显得不划算,而单56核Xeon w9-3495X却能跑到2颗16核CPU性能的3.43倍。
生命科学部分,lammps和rodiniaLifeSci测试看上去都挺理想;只有namd分子动力学这一项,Xeon w9-3495X在我的测试中表现有些不正常?这应该也是导致该CPU在前面的生命科学总分不佳的原因。但我去看了Intel提供的BenchMark参考结果(在本文结尾处有列出),同一部分测试的情况不像我这样。
由于时间有限,这将作为本文中为数不多的异常结果,留待将来有时间再分析。这可能与测试工作站的配置,或者环境设置有关。
金融服务计算部分,包括Monte Carlo(蒙特卡洛)概率模拟、Black-Scholes期权定价模型和Binomial二项式期权定价模型。无论双CPU带来的提升,还是56核Xeon w9-3495X的表现都令人满意。
尽管我是每项测试运行3遍取平均值,还是遇到了个别的随机性误差——有的测试单CPU性能只跑到了双CPU不到一半的水平。
SPECworkstation能源部分的CPU测试包括Convolution 卷积向量化、FFTW(快速傅里叶变换)、Kirchhoff基尔霍夫方程、piosson(泊松)和 srmp(表面相关倍数预测)5项,Xeon w9-3495X的性能分别达到2颗Xeon 6242的1.3-2.47倍。
前面我提到过,通用操作部分由于主要是单线程测试,所以只是包含有一项Multithreaded Matrix的Python 3.6测试能反映出核心数的不同。从表面上看7zip在压缩时也能把CPU跑满,但却没有反映到SPECworkstation这项具体测试的得分上,可能在执行或者结果统计上还有处理不周之处?
octave科学计算,Xeon w9-3495X的表现不够好,测试中遇到少数比例的这种情况是正常的。毕竟新的硬件需要有些软件做相应的适配优化,才能发挥出最高的效率。
最后我也分享下3项GPU计算的结果。这部分实际“干活”的是NVIDIA A4000显卡。(扩展阅读:《GPU 渲染/光线追踪测试:NVIDIA RTX A4000 vs. GeForce 3070 》)
不过在caffe和Folding@home这2项测试中,我也看到了不同测试平台的影响。与最新的Xeon w9-3495X + Dell Precision 7960工作站相比,Xeon 6242 CPU + 7920主机只能让PCIe 4.0显卡跑在3.0带宽下,但具体到这里影响GPU发挥的,可能是CPU的单核性能——因为我观察到2个OpenCL计算任务除了GPU压力大之外,同时也有一个CPU线程也是跑满的。
由于SPECworkstation需要同时照顾AMD显卡,所以采用了OpenCL而不是CUDA,这样与N卡的实际工作环境应该有些不同。不过也算给大家一点参考吧:GPU计算系统搭配的CPU主频最好也不要太低(注:不见得适用于所有情况)。
小结:Xeon W-3400 达到预期、多核性能优化要点
由于我手头没有2颗28核的Xeon Gold 6258R,所以给大家出示下Intel的宣传数据——总体上看与我的测试结果基本相符,这次也算是做了个验证吧。
如上图,SPECworkstation基准测试解释了我 单路为王?Intel Xeon W-3400、2400工作站平台预览 提出的一个问题,也反映出的一个优化要点:在有些行业的一部分应用软件,需要用到多进程并发运行,才能比较高效地发挥出超多核CPU工作站的效率。具体值得参考的细节都在文中,我就不再重复了。
Xeon W-3400的价值并不只在性能方面,包括PCIe 5.0扩展性等,都是超出上一代双路工作站的。像以前那些为了激活更多PCIe插槽从而不得不加第二颗CPU的客户,可以不用再因此而纠结了。
本轮测试始于CPU,而现代工作站又不止是CPU的舞台,所以后续我会结合具体应用加入关于GPU的讨论。接下来的测试计划我也在前面也透露过一些,敬请期待:)
原文:企业存储技术
推荐阅读
欢迎关注企业存储技术极术专栏,欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。