One thought I have here is that the sorting algorithm itself may not
have a significant impact, but hard disk latencies may well make a
difference.
What one sees as an (alphabetically) unordered list may well be an
ordering significant to a file system's performance, meaning, it's not a
completely random ordering and sorting it alphabetically can negatively
impact the file system's efficiency. The ordering in which a file system
returns file lists will likely be how these are physically ordered on
the drive, thus processing them in the same exact order will help in
reducing access latencies.
However, running builds in parallel and using SSDs over HDDs has reduced
the latency problem significantly in recent years. This will make
(alphabetically) unordered lists more useful to older systems, but less
useful to newer ones.
Seeing how this isn't useful to everyone, how about making it into a
--disable/--enable option for configure?
On 21/09/17 04:26, Bernhard M. wrote:
Follow-up Comment #2, bug #52076 (project make):
I tried to measure the performance difference using the attached 'makebench'
files, running in a tmpfs to not have physical disk IO influence results
but found that the difference is so close to zero
that it was lost in noise.
Here is what i got from running it twice each with unsorted and sorted glob:
==unsorted make:
real 0m8,108s
user 0m7,652s
sys 0m0,402s
make: Nothing to be done for 'run'.
real 0m7,706s
user 0m7,496s
sys 0m0,157s
real 0m7,998s
user 0m7,605s
sys 0m0,391s
make: Nothing to be done for 'run'.
real 0m7,634s
user 0m7,489s
sys 0m0,136s
== sorted make:
real 0m8,030s
user 0m7,662s
sys 0m0,372s
make: Nothing to be done for 'run'.
real 0m7,583s
user 0m7,417s
sys 0m0,168s
real 0m8,026s
user 0m7,609s
sys 0m0,423s
make: Nothing to be done for 'run'.
real 0m7,646s
user 0m7,509s
sys 0m0,137s
Do you have a benchmark that better shows the difference?
(file #41853)
_______________________________________________________
Additional Item Attachment:
File name: makebench.tar.gz Size:0 KB
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?52076>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make
.
_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make