CyberShadow / DBuildStat

Tools to measure and visualize performance of building D programs
17 stars 1 forks source link

estimate overlap of imports #1

Open MartinNowak opened 9 years ago

MartinNowak commented 9 years ago

Very interesting tool. The metrics only apply to separately compiled source files though, because imports can be accounted for multiple times. It would be interesting to group/cluster modules with similar imports for optimal parallel build times. Sure there are some compiler bugs with separately compiling multiple modules, but much faster rebuilds would be a good incentive to fix those bugs.

CyberShadow commented 9 years ago

OK, so it seems that I misunderstood your ticket.

It would be interesting to group/cluster modules with similar imports for optimal parallel build times.

I understood this as a suggestion to make DBuildStat make suggestions on how to optimally rebuild your program by grouping tersely-interdependent modules together, and perhaps emit a makefile in the style of rdmd --makedepend.

From the forum post discussion it seems you meant something else?

MartinNowak commented 9 years ago

Well back then I was also interested in finding the minimal overlap when splitting compilation into N jobs. But it'd already be interesting to estimate how much the imports overlap to better interpret the stats. You could try to split the time for a single import across all modules that share this import.

CyberShadow commented 9 years ago

I'm not sure how meaningful that would be, especially considering cyclic imports.