CPU的多核浮点瓶颈现象,在龙芯3A6000这一代被注意:龙芯LA664架构单核跑分,无论是SPEC2006还是2017都是浮点跑分高于整数跑分(差距20%以上),但是多核浮点跑分却出现了瓶颈,四核八线程的3A6000跑SPEC2006的多核得分,浮点略低于整数(旧世界数据在大约140分),而16核32线程的3C6000跑SPEC2017的多核浮点瓶颈更为严重,官方数据(应该是新世界+最新编译器)整数超过70分但是浮点低于60分。但是在近期龙芯发布会列举的3C6000与至强4314(同为16核32线程)的对比数据可以看到,至强4314在跑SPEC2017时也表现出了类似的多核浮点瓶颈现象,这两颗CPU在跑分数据上互有胜负,整理表格数据并计算得到的结果如图:

其中“多核浮点瓶颈指数”在这里是指浮点多核倍率与整数多核倍率的比值。由表格数据可以看出,3C6000的多核倍率低于至强4314,但综合性能接近,且3C6000与至强4314作为具有相同核心数与线程数的CPU表现出大致相同的多核浮点瓶颈程度,两者的多核浮点瓶颈指数分别是0.64和0.63。因此本贴观点认为多核浮点瓶颈可能属于多核CPU的常见现象,但是需要补充更多的不同的CPU数据样本来证明此事,而且此前提出的3A6000由于共享三缓结构特殊(四个核心的三缓没有直接形成整体而是通过特殊电路互联实现共享)导致多核浮点瓶颈的观点可能是不成立的,因为多个核心直接共享整块三缓的英特尔处理器在核心数与线程数相同时也表现出了大致相同的多核浮点瓶颈程度。但是由发布会数据也可以得出龙芯CPU的多核调度与协作仍然有提升与进步的空间,这可能主要依赖调度策略与总线延迟等因素。3B6000M是8核共享二缓,没有三缓,其多核效率有待实测,作为全新的LA364E架构的产品,也会带来不一样的体验与性能表现。
当然,这里也得肯定,龙链技术经过3C5000与3C6000两代发展之后,也是取得了许多进步,单个服务器CPU从最高2片封装(3D5000,32核)提升到最高4片封装(3C6000/Q,64核),且单主板最大路数从双路提升至四路,带宽利用率也更高,使龙芯产品更适合用于超大规模服务器。希望龙芯将自主进行到底,让自主体系越来越强大

其中“多核浮点瓶颈指数”在这里是指浮点多核倍率与整数多核倍率的比值。由表格数据可以看出,3C6000的多核倍率低于至强4314,但综合性能接近,且3C6000与至强4314作为具有相同核心数与线程数的CPU表现出大致相同的多核浮点瓶颈程度,两者的多核浮点瓶颈指数分别是0.64和0.63。因此本贴观点认为多核浮点瓶颈可能属于多核CPU的常见现象,但是需要补充更多的不同的CPU数据样本来证明此事,而且此前提出的3A6000由于共享三缓结构特殊(四个核心的三缓没有直接形成整体而是通过特殊电路互联实现共享)导致多核浮点瓶颈的观点可能是不成立的,因为多个核心直接共享整块三缓的英特尔处理器在核心数与线程数相同时也表现出了大致相同的多核浮点瓶颈程度。但是由发布会数据也可以得出龙芯CPU的多核调度与协作仍然有提升与进步的空间,这可能主要依赖调度策略与总线延迟等因素。3B6000M是8核共享二缓,没有三缓,其多核效率有待实测,作为全新的LA364E架构的产品,也会带来不一样的体验与性能表现。
当然,这里也得肯定,龙链技术经过3C5000与3C6000两代发展之后,也是取得了许多进步,单个服务器CPU从最高2片封装(3D5000,32核)提升到最高4片封装(3C6000/Q,64核),且单主板最大路数从双路提升至四路,带宽利用率也更高,使龙芯产品更适合用于超大规模服务器。希望龙芯将自主进行到底,让自主体系越来越强大