如何使用Boost MSM缩短编译时间
How to reduce compilation time with Boost MSM
我有大约40个转换的根状态机(包括四个子状态机)。所有操作都很好,但当我开始增加转换次数时,编译时间显著增加(大型状态机的开发变得一团糟)。我尝试使用boost::msm::back::favor_compile_time策略,并将子汉语拆分为多个翻译单元,但没有效果。有人能解决这个问题吗?Boost-1.53,编译器-MSVC 2012,处理器-英特尔i7
Upd:减少时间的最佳方法-从项目中删除boost msm
"但没有效果"
我认为这个想法是,在TU之间进行拆分会加快速度/因为/你并不总是需要重建TU,也不一定是干净的重建会更快。
事实上,对于更多的TU,我预计(非并行化)构建会更慢,因为每个TU最终都会在头中包含99%的相同代码。预编译的头可以在一定程度上缓解这种情况。
在这方面,将相关标头(和预处理器#define
s)添加到stdafx可能会有所帮助。
相关文章:
- 使用简单类型列表实现的指数编译时间.为什么
- 在已经使用Git的情况下减少编译时间
- C++常量数组的编译时间较长
- 编译时间文本到数字转换 (atoi)
- 在C++中执行 N 阶乘编译时间的 3 种不同/相同方法
- DLLexport 类模板实例(专用化),减少了仅标头模板库的编译时间
- 替换枚举以最大化编译时间检查的最佳方法
- 不同C++功能的编译时间
- 在预编译标头中实例化模板会缩短编译时间吗?
- 使用 SCons 提取每个编译单元的编译时间
- 将 lambda 函数转换为另一个编译单元中的普通函数会缩短编译时间吗?
- std :: Invoke_result_t编译时间语法错误
- 模板;constexpr;编译时间
- 如何实现声明功能-C 11,编译时间
- 如何减少编译时间:在包含未触及的头文件的情况下
- C++编译时间类型确定
- 特征:返回对具有编译时间尺寸检查的矩阵块的引用
- 在编译时间定义多个派生类
- 在编译时间创建查找表
- C 函数在编译时间返回类型