Description:
While running sysbench test for 5.4.2 on SuSE 10(x86_64) performance degradation was observed for write intensive workloads (UPDATE_KEY/UPDATE_NO_KEY) for MyISAM.
#========================== UPDATE_KEY =========================================
# Test: UPDATE_KEY:throughput, TPS
#
# Server 1 - 5.4.1-beta
# Server 2 - 5.4.2-beta_with_fast_mutexes
# Server 3 - 5.4.2-beta_wo_fast_mutexes
# Server 4 - 5.4.2-beta_wo_fast_mutexes_tcmalloc-dynamic
# Server 5 - 5.4.2-beta_wo_fast_mutexes_tcmalloc-static
#
# Server 1 Server 2 Server 3 Server 4 Server 5
# Thread MYISAM MYISAM MYISAM MYISAM MYISAM
4 3633.21 2412.09 2792.79 2878.93 2665.83
16 6592.72 4391.48 4734.10 4372.29 4724.07
64 5828.13 4468.07 4396.63 4647.41 4481.60
128 5500.98 4179.61 4188.66 4109.50 4074.65
256 5631.36 4276.70 4214.51 4200.59 4252.53
Tests were rerun on the same box but with RHEL52 and on similar box with the same version of SuSE.
# the same box, RHEL52
#
# Test: UPDATE_KEY:throughput, TPS
#
# Server 1 - 5.4.1-beta
# Server 2 - 5.4.2-beta_tcmalloc-static
# Server 3 - 5.4.2-beta_no_tcmalloc
#
# Server 1 Server 2 Server 3
# Thread MYISAM MYISAM MYISAM
4 3024.77 2976.55 2991.01
16 4968.37 5002.09 4958.53
64 5003.71 4673.28 4934.13
128 4726.84 4589.51 4528.26
256 4381.24 4768.71 4505.39
# similar test platform, SuSE 10
#
# Test: UPDATE_KEY:throughput, TPS
#
# Server 1 - 5.4.1-beta
# Server 2 - 5.4.2-beta_tcmalloc-static
# Server 3 - 5.4.2-beta_no_tcmalloc
#
# Server 1 Server 2 Server 3
# Thread MYISAM MYISAM MYISAM
4 11663.08 11644.66 11397.55
16 12450.39 12414.60 11924.04
64 11863.31 11855.51 11464.27
128 11067.65 11055.62 10800.17
256 10357.66 10493.95 10141.28
From these results it is possible to say that this degradation is likely OS/platform specific and I'm tracking down the cause of this issue.
How to repeat:
Run sysbench UPDATE_KEY/UPDATE_NO_KEY tests for 5.4.2/MyISAM