[Maria-developers] Benchmark of connect performance
Hi, in the light of http://yoshinorimatsunobu.blogspot.fi/2012/12/non-persistent-connection-perf... I did a similar benchmark. I used sysbench-0.4.12 for this with this command line $SYSBENCH --test=oltp --oltp-table-size=1000 --oltp-dist-type=uniform --num-threads=$thread --oltp-read-only=on --oltp-test-mode=simple --oltp-skip-trx --oltp-reconnect-mode=query --oltp-connect-delay=0 --db-ps-mode=disable --mysql-table-engine=InnoDB --mysql-engine-trx=no --mysql-socket=$SOCKET --max-time=60 --max-requests=0 --mysql-user=sysbench --mysql-password=sysbench --percentile=95 run This generates a workload of connect select .. where pk=const disconnect I varied the following: - number of concurrent threads - malloc library: glibc vs. tcmalloc - privileges given to sysbench@localhost * none (--skip-grant-tables) * global = ALL on *.* * db = ALL on sbtest.* * table = ALL on sbtest.sbtest I used the new 64 core machine for this. Everything was compiled locally with the REL_WITH_DEBINFO options. There is a rather huge dependence on the memory allocator. The results don't match Yoshis otherwise. See yourself. XL
Axel Schwenke wrote:
I did a similar benchmark.
I have pushed the scripts and raw results to the mariadb-benchmarks repo. There are results for different engines. mariadb-benchmarks/sysbench-runs/series22 = MyISAM mariadb-benchmarks/sysbench-runs/series23 = InnoDB (my previous mail) mariadb-benchmarks/sysbench-runs/series24 = HEAP XL
This is great content for a blog post On Tue, Mar 19, 2013 at 7:51 AM, Axel Schwenke <axel@askmonty.org> wrote:
Axel Schwenke wrote:
I did a similar benchmark.
I have pushed the scripts and raw results to the mariadb-benchmarks repo. There are results for different engines.
mariadb-benchmarks/sysbench-runs/series22 = MyISAM mariadb-benchmarks/sysbench-runs/series23 = InnoDB (my previous mail) mariadb-benchmarks/sysbench-runs/series24 = HEAP
XL
_______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
-- Mark Callaghan mdcallag@gmail.com
-----Original Message----- From: maria-developers- bounces+wlad=montyprogram.com@lists.launchpad.net [mailto:maria- developers-bounces+wlad=montyprogram.com@lists.launchpad.net] On Behalf Of Axel Schwenke Sent: Dienstag, 19. März 2013 15:45 To: Michael Widenius; maria-developers@lists.launchpad.net Subject: [Maria-developers] Benchmark of connect performance
Hi,
in the light of http://yoshinorimatsunobu.blogspot.fi/2012/12/non-persistent-connection- performance.html <skip> The results don't match Yoshis otherwise. See yourself.
Historical remark on this, the patch for MDEV-3945, http://lists.askmonty.org/pipermail/commits/2012-December/003976.html ) was something that I did to reduce contention of the LOCK_thread_count in this benchmark. This patch was inspired by the said Yoshi's blog entry - he names holding lock during THD destructor (including freeing memory) as one of contention sources, and this was easy to fix. This patch made into 5.5.29 and I think could make big difference to prior versions (70%, or something in that range, I do not recall exact number I measured) - it could be interesting to compare to older version and see how much did it bring.
Vladislav Vaintroub wrote:
Historical remark on this, the patch for MDEV-3945, This patch was inspired by the said Yoshi's blog entry - he names holding lock during THD destructor (including freeing memory) as one of contention sources, and this was easy to fix. This patch made into 5.5.29 and I think could make big difference to prior versions (70%, or something in that range, I do not recall exact number I measured)
I do have numbers :) I've just rerun the same test with MariaDB-5.5.25 (what Yoshi used) and indeed the 5.5.29 numbers are much better. XL
Axel Schwenke wrote:
http://yoshinorimatsunobu.blogspot.fi/2012/12/non-persistent-connection-perf... My results don't match Yoshis otherwise. See yourself.
OK, I found what makes the difference between Yoshis results and mine. It's the performance schema. It defaults to being enabled in 5.6.10 and has a rather huge impact. The attached graph shows how different privilege types and enabling/disabling performance schema affect the connect performance of MySQL-5.6.10. The workload is connect, point-select, disconnect. Single InnoDB table with just 1000 rows. Mysqld using tcmalloc. I'm collecting more data and will publish this on the MariaDB blog by the end of the week. XL
Hi, here comes another followup. After having seen huge impact from performance schema and the memory allocator, I started another run with optimal settings and a reduced number of contestants. Montys working tree 10.0-monty was added, that contains the latest optimizations. The benchmark uses a heap table of 1000 rows, to avoid any side effects from transaction handling and table open/close operations. Now MariaDB-10.0-monty, MariaDB-5.5.29 and MySQL-5.6.10 perform very similar. MariaDB-10.0.1 falls a bit behind; it does not have the fixes that went in 5.5.29 (Wlad) or 10.0-monty (Monty) XL
participants (3)
-
Axel Schwenke
-
MARK CALLAGHAN
-
Vladislav Vaintroub