On Mon, Apr 21, 2008 at 10:24:34AM +0200, Pavel Sanda wrote: > > So bigger compilation units are better, right? Any tricks around this? > > Andre, do you have the ratio for monolithic builds?
No. But I can create a few numbers manually... hang on. Revision 21692: non-monolithic Total: compiled: 17310566 real: 150056 ratio: 115 graphics: compiled: 669162 real: 2617 ratio: 255 frontends/qt4: compiled: 4386626 real: 27020 ratio: 162 support: compiled: 1432410 real: 9600 ratio: 149 mathed: compiled: 2357984 real: 19339 ratio: 121 insets: compiled: 2415915 real: 21566 ratio: 112 src/*.cpp: compiled: 4318608 real: 54814 ratio: 78 Revision 24415: non-monolithic frontends/qt4: compiled: 4296379 real: 34614 ratio: 124 insets: compiled: 2535206 real: 22128 ratio: 114 Revision 24415: monolithic frontends/qt4: compiled: 209600 real: 34614 ratio: 6 insets: compiled: 122255 real: 22128 ratio: 5 So: 1. Monolithic builds reduce the ratio by a factor(!) of 20(!). This does not translate directly into compilation times (due to non-linear optimization effects) and even less to build times (due to the extra time spend by linking and the make architecture), but is nevertheless significant 2. The effort spend to 'de-boostify' the frontend brought an improvement of roughly 25%. It's still bad ... Andre'