Colin Charles <colin@mariadb.org> writes:
I'm sure you have read: https://www.flamingspork.com/blog/2014/10/08/mariadb-10-0-on-power/
For XL: There’s obviously still some work in progress going on, but my initial results show performance within around 10% of MySQL, so with a bit of work we will hopefully see MariaDB reach performance parity.
I didn't delve into it too deeply, but am happy to help where I can.
For Serg: One interesting find was the code to account for thread memory usage uses a single atomic variable: this does not scale and does end up showing up on profiles.
It isn't clear 10% loss to which MySQL, but comparing to 5.6 or 5.7, this has to "just work better"
It was 5.6.something (20? I think with one patch from me). Both compiled the same way. IIRC it was 2-3% of total execution time spent doing this accounting. I doubt it's worth it - and it's likely that it can be done more efficiently too. Bouncing that single cache line around all CPU cores, especially if mariadb is run on more than a single NUMA node on POWER8 is going to hurt *BAD*. These kind of issues are actually pretty easy to spot using perf on POWER, and my suspicion is that the 10% perf difference is made up of a couple of things like this and shouldn't be tooo hard to claw back. -- Stewart Smith