相关疑难解决方法(0)

可以使用哪些技术来加速C++编译时间?

可以使用哪些技术来加速C++编译时间?

这个问题出现在Stack Overflow问题C++编程风格的一些评论中,我很想知道它有什么想法.

我见过一个相关的问题,为什么C++编译需要这么长时间?,但这并没有提供很多解决方案.


这里投票有Visual Studio支持共享项目之间的预编译头

c++

239
推荐指数
17
解决办法
10万
查看次数

使用多个核心使用g ++进行编译

快速提问:什么是编译器标志,允许g ++生成自身的多个实例,以便更快地编译大型项目(例如,一次为多核CPU提供4个源文件)?

非常感谢.

c++ compiler-construction multicore makefile g++

166
推荐指数
8
解决办法
14万
查看次数

是否有用于模板的优化c ++编译器?

由于它的强大功能,C++模板在我的日常工作中一直是一种祝福.但是人们不能忽视大量使用模板(hello元编程和Boost库)导致的(非常非常非常长的)编译时间.我已经阅读并尝试了很多可能性来手动重新组织和修改模板代码,以使其尽可能快地编译.

现在我想知道是否有任何c ++编译器试图最小化解释模板类所需的时间.我可能错了,但我觉得我知道的编译器只在他们以前的版本中添加了模板解释.

我的问题是:

  • c ++模板代码是如此难以解释,以至于没有太多优化?(我非常怀疑)
  • 是否有真正优化"c ++模板"解释的c ++编译器?
  • 是否有项目开发新一代的c ++编译器来优化这一点?
  • 如果您参加这样的项目,您的指导方针是什么?

c++ compiler-construction templates

22
推荐指数
4
解决办法
4331
查看次数

如何加快我的CMake启用C++项目的编译时间?

我最近遇到了几个关于改善CMake启用C++项目周转时间的具体方面的问题(比如"我应该在什么级别分配我的构建过程?""cmake rebuild_cache 只是一个子目录?"),我是想知道是否有更一般的指导利用CMake提供的特定可能性.如果可能没有跨平台编译时优化,我主要对Visual Studio或基于GNU toochain的方法感兴趣.

我已经意识到并投资了一般推荐的领域来加速C++构建:

  1. 更改/优化/微调工具链

  2. 优化您的代码库/软件架构(例如,通过减少依赖关系并使用明确定义的子项目 - 单元测试)

  3. 投资更好的硬件(SSD,CPU,内存)

喜欢在这里,这里这里推荐.所以我在这个问题上的重点是第一点.

另外我知道在CMake的Wiki中可以找到的建议:

前者只处理基础(并行make),后者主要处理如何加速解析CMake文件.

为了使这更具体一点,如果我从这里使用MSYS/GNU的100个库获取我的CMake示例,我得到了以下time测量结果:

$ cmake --version
cmake version 3.5.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).

$ time -p cmake -G "MSYS Makefiles" ..
-- The CXX compiler identification is GNU 4.8.1
...
-- Configuring done
-- Generating done
-- Build files have been written to: [...]
real 27.03
user …
Run Code Online (Sandbox Code Playgroud)

performance nmake compilation cmake gnu-make

14
推荐指数
1
解决办法
1万
查看次数