Re: Speed up Clog Access by increasing CLOG buffers
Dilip Kumar <dilipbalaut@gmail.com>
On Fri, Oct 21, 2016 at 7:57 AM, Dilip Kumar <dilipbalaut@gmail.com> wrote: > On Thu, Oct 20, 2016 at 9:03 PM, Tomas Vondra > <tomas.vondra@2ndquadrant.com> wrote: > >> In the results you've posted on 10/12, you've mentioned a regression with 32 >> clients, where you got 52k tps on master but only 48k tps with the patch (so >> ~10% difference). I have no idea what scale was used for those tests, > > That test was with scale factor 300 on POWER 4 socket machine. I think > I need to repeat this test with multiple reading to confirm it was > regression or run to run variation. I will do that soon and post the > results. As promised, I have rerun my test (3 times), and I did not see any regression. Median of 3 run on both head and with group lock patch are same. However I am posting results of all three runs. I think in my earlier reading, we saw TPS ~48K with the patch, but I think over multiple run we get this reading with both head as well as with patch. Head: -------- run1: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 87784836 latency average = 0.656 ms tps = 48769.327513 (including connections establishing) tps = 48769.543276 (excluding connections establishing) run2: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 91240374 latency average = 0.631 ms tps = 50689.069717 (including connections establishing) tps = 50689.263505 (excluding connections establishing) run3: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 90966003 latency average = 0.633 ms tps = 50536.639303 (including connections establishing) tps = 50536.836924 (excluding connections establishing) With group lock patch: ------------------------------ run1: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 87316264 latency average = 0.660 ms tps = 48509.008040 (including connections establishing) tps = 48509.194978 (excluding connections establishing) run2: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 91950412 latency average = 0.626 ms tps = 51083.507790 (including connections establishing) tps = 51083.704489 (excluding connections establishing) run3: transaction type: <builtin: TPC-B (sort of)> scaling factor: 300 query mode: prepared number of clients: 32 number of threads: 32 duration: 1800 s number of transactions actually processed: 90378462 latency average = 0.637 ms tps = 50210.225983 (including connections establishing) tps = 50210.405401 (excluding connections establishing) -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com
Commits
-
Use group updates when setting transaction status in clog.
- baaf272ac908 11.0 landed
- ccce90b39867 10.0 landed
-
Improve 64bit atomics support.
- e8fdbd58fe56 10.0 landed
-
Add ProcArrayGroupUpdate wait event.
- d4116a771925 10.0 landed
-
Make the different Unix-y semaphore implementations ABI-compatible.
- be7b2848c6d8 10.0 cited
-
Fix broken ALTER INDEX documentation
- 2143f5e12790 9.6.0 cited
-
Code and docs review for commit 3187d6de0e5a9e805b27c48437897e8c39071d45.
- d12e5bb79bb5 9.6.0 cited
-
Partition the freelist for shared dynahash tables.
- 44ca4022f3f9 9.6.0 cited
-
Correct StartupSUBTRANS for page wraparound
- 481725c0ba73 9.6.0 cited
-
Make idle backends exit if the postmaster dies.
- ac1d7945f866 9.6.0 cited
-
contrib/sslinfo: add ssl_extension_info SRF
- 49124613f134 9.6.0 cited
-
Reduce ProcArrayLock contention by removing backends in batches.
- 0e141c0fbb21 9.6.0 cited
-
Fix `make installcheck` for serializable transactions.
- 253de7e1eb9a 9.6.0 cited
-
Lockless StrategyGetBuffer clock sweep hot path.
- d72731a70450 9.5.0 cited
-
Reduce sinval synchronization overhead.
- b4fbe392f8ff 9.2.0 cited