@卧楼听松 我的意思也很明白:
“我是认为去掉462这项后,对于SPEC CPU2006的测试而言是公平的。但同时,没有任何的桌面版商业软件和知名开源软件的二进制包使用ICC编译器,也是事实。”
意思是单就SPEC CPU 2006的测试目的来说,用ICC和GCC对比,也算是公平的,因为SPEC CPU2006的测试目的之一就是对比编译器。但是,不同的编译器主要是展示当CPU与编译器搭配之后能达到的性能水平,而不是单纯是CPU的性能水平。
如果要单纯对比CPU的性能水平,很明显就需要排除了它的变量,比如操作系统版本必须尽量一致,编译器类型和版本必须尽量一致,甚至散热条件也要尽量一致,要不然i9用intel原装风扇不一定跑得过用上水冷的i3。
实际应用场景中,极少使用ICC,可以说没有任何有一定的用户量的桌面软件和操作系统是使用ICC编译的,极小众的不算。ICC编译器相当于软件的价值来说,根本不算贵,比如PhotoShop一套卖几万,ICC编译器比它还便宜,为什么对性能有较高要求的PhotoShop、3DMax等等都不用ICC呢?肯定是因为它的缺点比优点更明显,商业软件公司才会弃之不用。比如虽对跑分有奇效,但对普通应用软件基本无效,甚至造成兼容性和稳定性的问题。
即然没有什么大众化的软件使用ICC,那么当然要使用GCC、MSVC、LLVM这些更常用的编译器来编译测试项目,才能代表CPU在实际用户环境的能体验到的性能。