[MDEV-10123] performance regression 10.0 to 10.1 with pure write workload Created: 2016-05-25  Updated: 2017-06-27  Due: 2016-06-29  Resolved: 2017-06-27

Status: Closed
Project: MariaDB Server
Component/s: OTHER
Affects Version/s: 10.1
Fix Version/s: 10.1.24

Type: Bug Priority: Major
Reporter: Sergei Golubchik Assignee: Axel Schwenke
Resolution: Won't Fix Votes: 1
Labels: None

Attachments: File 10.0.vs.10.1.OLTP.ods     File regression-writes1.ods     File regression-writes2.ods     File regression-writes3.ods     File regression-writes4.ods    

 Description   

We were told about 15% performance decrease with 10.1.14 compared to 10.0.25 in one benchmark. After tuning the database to cope with the 100% writes workload, a regression of 5-7% remains.



 Comments   
Comment by Sergei Golubchik [ 2016-05-25 ]

Todo:

  • check defaults in 10.1 vs. 10.0; does the regression exist with 10.0 defaults forced on 10.1?
  • collect mutex statistics with PFS
  • collect PMP profiles
Comment by Axel Schwenke [ 2016-05-25 ]

The regression is not caused by new default settings of the server. 10.1 actually behaves worse when the 10.0 defaults are forced.

Comment by Axel Schwenke [ 2017-06-22 ]

I added a write-only test case to the regression test suite and test the behavior of many more server versions for a clearer picture. However since 10.0 and 10.1 are XtraDB and we switched to InnoDB for 10.2, this issue has very low significance.

Comment by Axel Schwenke [ 2017-06-27 ]

Benchmarks for pure write workload show a mixed bag result. There are a few observations however:

  1. 10.1.13 was a bad apple. While single thread performance was on par, multi-thread performance drops badly (below 50%) of previous (and following) 10.1 releases. See regression-writes1/2.ods.
  2. single-thread performance is slightly dropping from 5.5 over 10.0 to 10.1 and detoriating in 10.2. There was a bad drop from 10.2.1 to 10.2.2. This affects workloads up to 32 benchmark threads.
  3. multi-thread performance, especially at the upper end (128 threads and more) shows 10.2 before 10.0 before 10.1 before 5.5. This is best seen in regression-writes3.ods

Conclusion regarding the topic of this issue: yes, there is a slight performance drop between 10.0 and 10.1. It is definite for high thread counts (64 threads and up). For lower thread counts the performance of different 10.0 and 10.1 releases overlaps, meaning the variation within 10.0 and within 10.1 is about the same size as the variation between 10.0 and 10.1. Check regression-writes4.ods for details.

Comment by Axel Schwenke [ 2017-06-27 ]

MariaDB 10.2 switched to InnoDB, so no more effort should be put into XtraDB. Also the observed performance drop is rather small. I don't expect it to be visible outside of a benchmark.

Generated at Thu Feb 08 07:39:51 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.