AMD vs Intel
CPU跑分对比
AMD与Intel的差距近些年越来越小,甚至在消费级市场上还超越了后者,同时还极具性价比。
这一事实将加速有着“挤牙膏”之称的Intel加速消费级市场上CPU的更新换代。
科学计算的选择
既然AMD cpu核心数这么多,如2020年的3990X具备64核心数;那么AMD是否可以加速计算物理、计算化学、计算材料学等领域中第一性原理计算呢?
会,但不如预期那么高。
由于题主的CPU是AMD,所以我怀疑可能是平台的关系。随便Google一下发现了一些人在抱怨,Matlab在AMD的CPU上执行速度并不理想,甚至满于低一档Intel CPU。例如,有人发现同样的代码,在AMD 2990WX(32核64线程@3.5GHZ, 64G RAM)上需要2200s,而在 Intel 8700k (6核12线程@4.0GHZ, 32GRAM)上只需要600s,3.5x倍的速度。
原因大概有二:
Threadripper 虽然核心数比较多,但是单核新能还是不如Intel,而Matlab中很多函数没有经过多核优化,单核心能就非常关键了Matlab。
很多函数是只对Intel优化的,比如严重依赖MKL,而Intel自己的编译器“故意”让同样的代码在AMD CPU上执行缓慢。
在AMD平台上,Intel编译器也能提供良好的性能。至少在3700X上测得的SPEC2006分数比Clang要高得多。并且Intel也承诺了MKL数学库在非Intel的x86 CPU上也具有出色的性能。所以不必担心负优化的问题,下面是2012年的一个测试,分析了Intel编译器在AMD和Intel CPU上的表现。
使用openBLAS数学库后,AMD 芯片计算效率有显著提升,但是对于AMD Ryzen 2990WX,单程序数值计算并行效率随核数增大反而降低,对原子数较小的体系,计算效率随核数增加下降明显,最优核数反倒仅使用4核计算时获得,此时性能大于为Intel 7980 XE的1/3,随着原子体系增大,如对57原子体系,AMD 这款cpu最优核数为12,此时性能约为Intel 7980XE的1/2。
Intel编译器和数学库有巨大优势,就算cpu本身性能差点,科学计算时大多也能反超。
文档
总结
-
若是办公娱乐用途,目前的AMD高端处理器性能高、性价比也高,可以考虑。
-
若处理器部署在计算服务器中,推荐还是选择INTEL处理器。