g ++编译期间的CPU操作

时间:2013-03-23 13:27:48

标签: compiler-construction g++ cpu cpu-architecture build-server

我想投资构建服务器以减少g ++编译的时间。 由于源可并行化,我们的想法是一个多核系统。 (32-48-64核心)

我的问题是在编译过程中使用了哪种类型的cpu操作? (新的AMD CPU只有2个核心的1个浮点单元)

通常CPU使用大量软件进行基准测试,但我找不到任何测试CPU进行编译的网站。哪种类型的软件与g ++编译器类似? (x264编码,压缩,加密?)

所以基本的问题是当处理器专门用于编译代码时,处理器最重要的参数是什么?

感谢。

1 个答案:

答案 0 :(得分:1)

编译器主要使用内存加载/存储操作和整数操作。它们根本不使用浮点或SIMD(除了可能用于加载/存储)。

编译软件通常会形成一个自己的基准类,而且很难。处理器制造商不喜欢这些基准测试,因为它通常很难进行优化。

主要因素是内存带宽,而不是时钟频率。当然这一切都在一起玩。但是你想要对内存进行广泛访问,你需要在所有级别上使用大缓存。例如,您不希望10%的时钟速度和一半的缓存大小。