Hi all, I did some benchmarking using pgbench and postgresql CVS head, compiled yesterday.
The results are attached. It looks like 2.6.0-test4 does better under load but under light load the performance isn't that great. OTOH 2.4.20 suffer major degradation compare to 2.6. Looks like linux is also getting heavy at lower end. Of course it isn't as bad as solaris as yet..:-) IIRC in a kernel release note recently, it was commented that IO scheduler is still being worked on and does not perform as much for random seeks, which exaclty what database needs. How does these number stack up with other platforms? Anybody with SCSI disks out there? I doubt IDE has some role to play with this. Comments? Shridhar
Vacumm full done after each run. pg_resetlog run between each server start Scaling factor: 10 Initialization time: real 1m42.282s user 0m1.787s sys 0m0.121s Kernel 2.6.0-test4 Effective cache size 38400 (300MB) checkpoint segments=6 1)Shared buffers 1000 pgbench -c5 -t100 test1 tps = 131.962542 (including connections establishing) tps = 134.418358 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 79.301493 (including connections establishing) tps = 79.393258 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 64.917044 (including connections establishing) tps = 65.438067 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 66.135615 (including connections establishing) tps = 66.193039 (excluding connections establishing) 2) Shared buffers 2000 pgbench -c5 -t100 test1 tps = 135.598994 (including connections establishing) tps = 138.296634 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 81.331678 (including connections establishing) tps = 81.425369 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 116.524476 (including connections establishing) tps = 118.388407 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 64.659894 (including connections establishing) tps = 64.719829 (excluding connections establishing) 3) Shared buffers 3000 pgbench -c5 -t100 test tps = 132.489569 (including connections establishing) tps = 135.177003 (excluding connections establishing) pgbench -c5 -t1000 test tps = 70.272855 (including connections establishing) tps = 70.343452 (excluding connections establishing) pgbench -c10 -t100 test tps = 121.624524 (including connections establishing) tps = 123.549086 (excluding connections establishing) pgbench -c10 -t1000 test tps = 64.124644 (including connections establishing) tps = 64.183736 (excluding connections establishing) 4) noatime enabled Shared buffers 3000 pgbench -c5 -t100 test tps = 90.850600 (including connections establishing) tps = 92.053686 (excluding connections establishing) pgbench -c5 -t1000 test tps = 92.209724 (including connections establishing) tps = 92.329682 (excluding connections establishing) pgbench -c10 -t100 test tps = 79.264231 (including connections establishing) tps = 80.145448 (excluding connections establishing) pgbench -c10 -t1000 test tps = 70.439082 (including connections establishing) tps = 70.506189 (excluding connections establishing)
Vacumm full done after each run. pg_resetlog run between each server start Scaling factor: 10 Initialization time: real 1m32.551s user 0m1.710s sys 0m0.130s Kernel 2.4.20 Effective cache size 38400 (300MB) checkpoint segments=6 1)Shared buffers 1000 pgbench -c5 -t100 test1 tps = 145.504917 (including connections establishing) tps = 147.991299 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 70.785341 (including connections establishing) tps = 70.849065 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 147.605267 (including connections establishing) tps = 149.944123 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 55.646866 (including connections establishing) tps = 55.678399 (excluding connections establishing) 2) Shared buffers 2000 pgbench -c5 -t100 test1 tps = 140.115444 (including connections establishing) tps = 142.441377 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 77.015876 (including connections establishing) tps = 77.084474 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 128.512768 (including connections establishing) tps = 130.314689 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 55.003077 (including connections establishing) tps = 55.035001 (excluding connections establishing) 3) Shared buffers 3000 pgbench -c5 -t100 test1 tps = 153.142499 (including connections establishing) tps = 156.094637 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 81.391878 (including connections establishing) tps = 81.472845 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 120.420876 (including connections establishing) tps = 122.066975 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 56.766460 (including connections establishing) tps = 56.801117 (excluding connections establishing) 4) Shared buffers 3000, noatime pgbench -c5 -t100 test1 tps = 140.464589 (including connections establishing) tps = 143.152323 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 94.718161 (including connections establishing) tps = 94.826618 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 131.925129 (including connections establishing) tps = 133.826403 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 65.374006 (including connections establishing) tps = 65.458626 (excluding connections establishing)
---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly