Subject: Re: bug#6600: [PATCH] sort: add --threads option to parallelize internal sort.

From: Chen Guo <[email-masked]>
Date: Wed, 21 Jul 2010 01:13:50 -0700

Hi all,
    So the gcc compile farm just got a 24 core donation
from AMD (2x12 at 1.5 GHz), so I couldn't help but run
some results.
    As a way of isolating sort time versus I/O time, I installed
a timer output, such that sort prints to stderr the elapsed
time during sort()'s call to sortlines().
    There are other people using the machine, so the
timings wont be the most accurate, but I figure you guys
may still be interested. On 24 threads, the pure sort runs
in about 15% of the single threaded time, while with I/O
that figure's 17.5%.

$ for i in 1 2 4 8 12 16 24; do echo "T=$i: ";  /usr/bin/time -f "%e"
sort --parallel=$i 1M > /dev/null; echo ""; done
T=1:
Sort without I/O: 11.074463
11.38

T=2:
Sort without I/O: 5.672202
5.96

T=4:
Sort without I/O: 3.453562
3.71

T=8:
Sort without I/O: 2.351003
2.65

T=12:
Sort without I/O: 2.100730
2.39

T=16:
Sort without I/O: 1.821079
2.09

T=24:
Sort without I/O: 1.674106
1.99