Hi all, I compared 2.6 with elevator=deadline. It did bring some improvement in performance. But still it does not beat 2.4.
Attached are three files for details. I also ran a simple insert benchmark to insert a million record in a simple table with a small int and a varchar(30). Here are the results 2.6 deadline 1K/xact 299sec 10K/xact 277 sec 100K/xact 271 sec 2.6 AS 1K/xact 262sec 10K/xact Not done 100K/xact 257 sec 2.6 AS 1K/xact 252sec 10K/xact 243 sec 100K/xact 246 sec It seems that I noted a test result wrongly. I need to do it again. Overall 2.6 needs some real IO improvements. Of course it could do better on multiway machine. I guess there is no point bothering this with kernel hackers. They know this stuff already, right. Looking forward to next release of kernel and hope it improves things... 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 1m44.512s user 0m1.765s sys 0m0.134s Kernel 2.6.0-test4 Effective cache size 38400 (300MB) checkpoint segments=6 1)Shared buffers 1000 pgbench -c5 -t100 test1 tps = 135.647884 (including connections establishing) tps = 138.318785 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 61.097461 (including connections establishing) tps = 61.144720 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 121.626566 (including connections establishing) tps = 123.517787 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 54.618036 (including connections establishing) tps = 54.654704 (excluding connections establishing) 2) Shared buffers 2000 pgbench -c5 -t100 test1 tps = 131.715307 (including connections establishing) tps = 134.220729 (excluding connections establishing) pgbench -c5 -t1000 test1 tps = 74.486274 (including connections establishing) tps = 74.559177 (excluding connections establishing) pgbench -c10 -t100 test1 tps = 127.431602 (including connections establishing) tps = 129.461754 (excluding connections establishing) pgbench -c10 -t1000 test1 tps = 51.840810 (including connections establishing) tps = 51.875044 (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 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])