lmi
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi] Parallel-make output: deterministic for wx only?


From: Greg Chicares
Subject: [lmi] Parallel-make output: deterministic for wx only?
Date: Tue, 17 Apr 2018 22:57:16 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0

Comparing logs of full 'install_msw.sh' runs (the MSW script, not just
the WX script that it invokes), I see something curious. For lmi, and
for every library except wx, the order in which object files are
compiled changes from one run to the next. But for wx, every invocation
of 'i686-w64-mingw32-g++' appears to occur in an invariant, determinate
order--only for wx and its submodules. Copying and pasting the 'make'
command from one of these logs here:
+ make --jobs=32
would seem to prove that a large number of jobs are run in parallel,
and xfce's "CPU Graph" shows every processor maxed out for several
minutes. I observe this phenomenon at least for my last three logs,
all of which rebuilt wx completely, and it seems unlikely that this
would happen by chance--always for wx, never otherwise.

This is really nice. Compare two logs with 'meld', and it takes time
to look at all of the rearranged chunks highlighted in color, just to
be sure that (e.g.) libxml2 did indeed build correctly once again.
But the wx part just matches perfectly, so a successful build is
obvious, and any error would stand out clearly. What's the magic?
Pre-sort the list of object files passed to make? Intercept makefile
output and sort the 'g++' commands?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]