Hi Axel, thanks for benchmarking it! On Wed, Feb 26, 2014 at 02:30:50PM +0100, Axel Schwenke wrote:
Hi Svoj,
Sergey Vojtovich wrote:
I benchmarked various mutexes available to MariaDB. Among other things I noticed that normal mutexes scale better than adaptive.
Could you do official benchmarks (patch attached)? It would be nice to also benchmark MySQL-5.6 with thr_lock part of the patch.
Here are sysbench results for 10.0.8. I added 10.0.7 and MySQL-5.6.10 from an earlier run for comparison. The test is sysbench OLTP ro with multiple (32) tables.
The normal mutexes give significantly better throughput. The raw data contains also the snapshots from performance schema with the mutex numbers. Top mutex is still LOCK_open. In my benchmark I got like 40% throughput increase whereas in your benchmark it is like 10%, still not bad.
But you say that there are 32 tables now. It greatly offloads work from THR_LOCK::mutex (which is per-table) to ... LOCK_open (which is global). I believe we should see bigger difference for single table load. Anyway 10% increase looks worthy. I'll try to get this patch into 10.0.9. Hope it won't sacrifice other loads (according to my microbenchmark it shouldn't).
I currently run another sysbench OLTP, this time also r/w and with both lower and higher concurrency. I added 10.0.8-patched to this, but it won't finish before tomorrow. Great! Please keep me updated.
Thanks, Sergey