On Tue, Sep 20, 2011 at 7:53 PM, Peter Geoghegan <pe...@2ndquadrant.com> wrote: > I don't think that the fact that that happens is at all significant at > this early stage, and it never even occurred to me that you'd think > that it might be. I was simply disclosing a quirk of this POC patch. > The workaround is probably to use a macro instead. For the benefit of > those that didn't follow the other threads, the macro-based qsort > implementation, which I found to perform significantly better than > regular qsort(), runs like this on my laptop when I built at 02 with > GCC 4.6 just now: > > C stdlib quick-sort time elapsed: 2.092451 seconds > Inline quick-sort time elapsed: 1.587651 seconds
Results on my machine, for what they're worth: [rhaas inline_compar_test]$ gcc -O0 qsort-inline-benchmark.c [rhaas inline_compar_test]$ ./a.out C stdlib quick-sort time elapsed: 2.366762 seconds Inline quick-sort time elapsed: 1.807951 seconds [rhaas inline_compar_test]$ gcc -O1 qsort-inline-benchmark.c [rhaas inline_compar_test]$ ./a.out C stdlib quick-sort time elapsed: 1.970473 seconds Inline quick-sort time elapsed: 1.002765 seconds [rhaas inline_compar_test]$ gcc -O2 qsort-inline-benchmark.c [rhaas inline_compar_test]$ ./a.out C stdlib quick-sort time elapsed: 1.966408 seconds Inline quick-sort time elapsed: 0.958999 seconds [rhaas inline_compar_test]$ gcc -O3 qsort-inline-benchmark.c [rhaas inline_compar_test]$ ./a.out C stdlib quick-sort time elapsed: 1.988693 seconds Inline quick-sort time elapsed: 0.975090 seconds -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers