[Libreoffice] ~2x faster gnumake ...
Michael Meeks
michael.meeks at novell.com
Tue Apr 5 02:35:08 PDT 2011
Hi there,
Weelll ... nicer structures aside; having put a breakpoint in stat64
( catch syscall stat64 FWIW ;-) - I discovered that the vast majority of
our stats were not from 'stat' at all (which clearly has been optimised
heavily) - but instead from 'glob':
read.c (parse_file_seq) calls glob on all dependencies.
For each of those it does a stat ;-)
make -sr before:
real 0m5.795s
user 0m3.513s
sys 0m2.274s
make -sr passing 'PARSEFS_NOGLOB' to the beastie[1]
real 0m2.496s
user 0m2.342s
sys 0m0.150s
Which essentially killed the system component of performance, and saved
a truck-load of system calls ;-)
I'll do some more poking around to make it an up-stream-able, robust
patch.
ATB,
Michael.
[1] - un-conditionally breaking globbing for sure but - why not ? :-)
--
michael.meeks at novell.com <><, Pseudo Engineer, itinerant idiot
More information about the LibreOffice
mailing list