EXE全球经济放缓
EXE global slowdown
本文关键字:EXE 更新时间:2023-10-16
我有一个包含Fortran和C++代码的exe,该代码最近被修改为链接到一些自定义静态库。 exe 现在在每个函数中的运行速度都比以前慢得多(~ 因子 2),即使它在测试运行中没有调用任何新代码。 已在探查器中检查调用图和函数命中计数,并验证未调用新代码的断言。
在链接时,现在有许多由新代码引起的"多重定义"警告。 但是,优化仍处于启用状态,并且未修改其他编译器或环境设置。 exe 不会明显大于以前,并且两次运行中的内存占用量相同。
任何想法可能导致这种情况?
该问题是由螺旋式上升的包含链引起的,其中优化在调用链下游的某些模块中无意中关闭。 在这些模块中没有优化是无关紧要的,直到链接标头,这是代码的性能关键部分。 由于构建顺序的更改,过去包含这些标头的优化模块不再包含这些标头。
相关文章:
- 没有找到相关文章