Emergency

Improved InnoDB rw_lock patch



PREVIOUS POST
NEXT POST

There is patch from Google to improve SMP performance , but for some workloads it showed for us reverse scalability.
E.g. update_key benchmark from sysbench. There are also results with Yasufumi’s rw_locks (http://bugs.mysql.com/bug.php?id=26442)

ThreadsStandard InnoDBGoogle smpfixYasufumi rw_lock
19700.2810601.969432.44
214355.6616673.3112783.58
416104.202669.396308.92
818507.55780.221854.43
1616178.09842.731601.05
3212337.502028.893274.13
647801.181911.944043.85

results are in tps, more are better

(result in tps, more is better)
The benchmark was made on 8cores box, and as you see for 4+ threads we have worse results than for 2 threads. That is was main reason why we did not include InnoDB smp fixes in our build yet.

Fortunately we get fixed version of Yasufumu’s rw_locks and you can download them there

The results for the same benchmark:

ThreadsStandard InnoDBYasufumi rw_lock ver 2
19700.289812.18
214355.6614602.46
416104.2018726.22
818507.5519099.80
1616178.0917470.22
3212337.5012407.24
647801.187669.73

And for other workloads new rw_locks show results comparable with Google’s smpfix, so we will include
innodb_rw_lock into our next -percona-highperf release

PREVIOUS POST
NEXT POST
Tags:

, ,

Categories:
Percona Software


Comments

  • Do you have any benchmarks from some of the other tests?

  • Vadim Post author

    Davy,

    We have benchmarks for DBT2, but results should be better prepared before we publishing them.

  • Many thanks to Yasufumi for his innodb_rw_lock patch. I was close to loosing my trust in FreeBSD before applying the patch. Running our 7G InnoDB database on MySql 5.0.67 on FreeBSD 7.0 on a 8core Box we had severe context-switching problems without the patch. After applying it it works like a charm. Close to no contentions left!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">