[Bizgres-general] Slow glibc qsort, two versions that are much faster

Luke Lonergan llonergan at greenplum.com
Fri Dec 9 21:36:42 GMT 2005


Jim,

On 12/9/05 1:17 PM, "Jim C. Nasby" <jnasby at pervasive.com> wrote:

> Did you test sorting a set with a high correlation, ie: nearly in order
> already? That's probably a pretty common case that it would be
> interesting to see numbers on.

Cool - I threw in a sorted set, with 0-size, interrupted in the middle with
2 values that were not in sort order, here is the result:

============================================================
64-bit Linux (RedHat EL3 U4 with a 2.6 kernel):
============================================================
Random set qsort, qsortBSD, qsortG 784696us, 724415us, 269591us
Reverse set qsort, qsortBSD, qsortG 401632us, 224103us, 78415us
Zero set qsort, qsortBSD, qsortG 378166us, 28859us, 147610us
NetBSD qsort results:
Random set: qsortBSD / qsort is 7.68% faster.
Correlated set: qsortBSD / qsort is 44.20% faster.
Zero set: qsortBSD / qsort is 92.37% faster.
qsortG results:
Random set: qsortG / qsort is 65.64% faster.
Correlated set: qsortG / qsort is 80.48% faster.
Zero set: qsortG / qsort is 60.97% faster.

- Luke




More information about the Bizgres-general mailing list