Sorting algorithms/Quicksort: Difference between revisions
Content added Content deleted
(Added Chipmunk Basic) |
imported>Rcmlz |
||
Line 8,393: | Line 8,393: | ||
parallel-medium-batch => { quicksort-parallel(@unsorted, $m-batch) }, |
parallel-medium-batch => { quicksort-parallel(@unsorted, $m-batch) }, |
||
parallel-large-batch => { quicksort-parallel(@unsorted, $l-batch) }, |
parallel-large-batch => { quicksort-parallel(@unsorted, $l-batch) }, |
||
}, :statistics; |
|||
⚫ | |||
my @metrics = <mean median sd>; |
|||
⚫ | |||
my $msg-row = "%.4f\t" x @metrics.elems ~ '%s'; |
|||
say "$name avg $avg secs" |
|||
⚫ | |||
say @metrics.join("\t"); |
|||
⚫ | |||
say sprintf($msg-row, %m{@metrics}, $name); |
|||
⚫ | |||
⚫ | |||
<pre> |
<pre> |
||
xxxxxxxxxxx Benchmarking xxxxxxxxxxx |
xxxxxxxxxxx Benchmarking xxxxxxxxxxx |
||
elements: 40960, runs: 5, cpu-cores: 4, large/medium/small/tiny-batch: 8192/2048/512/128 |
elements: 40960, runs: 5, cpu-cores: 4, large/medium/small/tiny-batch: 8192/2048/512/128 |
||
mean median sd |
|||
single-thread avg 6 secs |
|||
2.9503 2.8907 0.2071 parallel-small-batch |
|||
parallel-naive avg 5.6 secs |
|||
parallel-tiny-batch |
3.2054 3.1727 0.2078 parallel-tiny-batch |
||
5.6524 5.0980 1.2628 parallel-naive |
|||
parallel-small-batch avg 2.4 secs |
|||
parallel-medium-batch |
3.4717 3.3353 0.3622 parallel-medium-batch |
||
parallel-large-batch |
4.6275 4.7793 0.4930 parallel-large-batch |
||
6.5401 6.2832 0.5585 single-thread |
|||
</pre> |
</pre> |
||