Compilation time analysis via ClangBuildAnalyzer #1236
Replies: 1 comment
-
Thank you, @vittorioromeo, any investigation, insights, ideas, and tests are appreciated! Additionally to the ClangBuildAnalyzer, is the The compile times and resources required by the compiler have improved since v1.7. For v1.8 I have streamlined the entire template code machinery. The tuplification of the 'storage' implementation and the generalization of tuple filtering and iteration seem to have a positive effect on the resources required by the compiler. As you have seen, I also tried to play around with a custom tuple (PR #1055). I learned that the standard tuple implementations are usually horrible (though clang/llvm use a non-recursive implementation as mentioned by Howard Hinnant), but I didn't notice any improvements in build times with the hana-based custom tuple, neither in my Visual C++ test environment, nor on appveyor. I didn't check the resource-consumption of the compiler. We do have a few people that complained about insane build times or compiler resource exhaustion, which seem to be resolved: |
Beta Was this translation helpful? Give feedback.
-
Trying to speed up compilation times a bit. The first step is an analysis using ClangBuildAnalyzer, which I ran over the entire repository, with tests and examples enabled.
ClangBuildAnalyzer output here:
https://gist.github.com/vittorioromeo/ab81ce00927149737398f97d3948b62e
Most of the time is spent in these instantiations, would be nice to try and optimize those:
Beta Was this translation helpful? Give feedback.
All reactions