MetanoKid / cpp-build-analyzer

Analyzes MSVC C++ compilations with C++ Build Insights SDK
GNU General Public License v3.0
80 stars 2 forks source link

Aggregated "total time" is misleading in several analyzers #35

Closed MetanoKid closed 4 years ago

MetanoKid commented 4 years ago

Some analyzers (i.e. file inclusion times, template instantiation times) output the aggregated total time for all entries with the same key.

This value is misleading as it doesn't take parallel executions into account. Imagine we're looking at file inclusion times and we have a header that's included in all files. The total inclusion time for that file would only be correct if we compiled in a single-threaded fashion.

It'd probably be better if we listed the minimum/maximum times, the average time, maybe the standard deviation? That's, of course, alongside the number of occurrences. This way, instead of total time drawing our attention in files that get included a lot but take little time to include, we could check for files that take a lot of average time?

MetanoKid commented 4 years ago

Remember to update README.md screenshots with average times instead of total ones.