4

由于我在一个非常服务器盒(总共 32 或 64 个内核)上编译我的 C++ 代码,有没有办法调整编译器选项来加快编译时间?例如,告诉编译器使用多个线程编译独立的 .cpp 文件。

4

4 回答 4

4

这取决于您使用的工具链。

如果您使用的是 GNU Make,则添加-j 32到您的 make 调用中以告诉 Make 并行启动 32 个作业(例如)。只要确保您没有耗尽 RAM 并因此破坏您的交换文件。

于 2010-07-09T01:20:55.030 回答
4

dmakeSun Studio 在包含的 make 版本中包含并行构建支持。有关详细信息,请参阅dmake 手册

于 2010-07-09T02:59:48.157 回答
3

使用像 Boost JAM 这样的东西来为你做这种多线程处理——从我的经验来看,它比多线程制作更有效。

于 2010-07-09T01:37:29.180 回答
0

Sun 的 C++ 编译器还有一个-xjobs选项可以让编译器在内部分叉多个线程。为了提高效率,您可能必须将所有 .cc 文件传递​​给 CC 的单个调用。

于 2011-03-24T22:14:06.827 回答