Performance improvements in Percona 5.0.83 and XtraDBVadim Tkachenko
There was small delay in our releases, part of this time we worked on features I mentioned before:
– Moving InnoDB tables between servers
– Improve InnoDB recovery time
and rest time we played with performance trying to align XtraDB performance with MySQL 5.4 ® and also port all performance fixes to 5.0 tree.
So basically we made: new split-buffer-mutex patch, which separate global buffer pool mutex into several small mutexes, and ported some Google IO fixes.
Here are results what we have so far. As usually for benchmarks I used our workhorse Dell PowerEdge R900 with 16 cores and 32GB of RAM and RAID 10 on 8 SAS disks. And again as usually our tpcc-mysql scripts with 100W (about 10GB of data) and 16 connection. For in-memory benchmark I set InnoDB buffer pool to 16GB, and for io-bound benchmarks I made it 3GB.
Raw results and rest of mysql parameters are here
And let me post some graphs here.
In-memory benchmark, results during run:
And averaged final result:
As you see XtraDB, 5.0.83-percona and MySQL 5.4 are almost equal, leaving 5.0.83-standard far behind.
If you wonder about dips during run, that’s know problem with checkpoint activity, and we did not used innodb_adaptive_checkpoint in this case for XtarDB / 5.0.83-percona. And, by the way, Yasufumi also made new patch for second implementation of adaptive_checkpoint, and he will write about it eventually. But this is topic for another benchmark.
And now IO-bound results
Again you can see that XtraDB, 5.0.83-percona and 5.4 are almost equal, with difference we have get some extra performance turning InnoDB readahead off.
You may wonder why one now can choose XtraDB if 5.4 has the same performance, let me refresh:
– XtraDB is based on InnoDB plugin 1.0.3, with all its benefits like FAST INDEX CREATION, table compression
– XtraDB will support moving tables between servers
– XtraDB will be released with fast recovery patch
– XtraDB has additional performance fixes i.e. extra UNDO and ROLLBACK segments (full list see here https://www.percona.com/docs/wiki/percona-xtradb:patch:start)
And now 5.0-tree will contain all performance fixes and show the same results as 5.4
Both 5.0.83-percona and XtraDB-rel6 are available in source code yet, but binaries should be ready in one-two weeks timeframe.