Three Times Five Minutes Runs on work with 5.1 vs. 5.2-wl86 key cache partitions off

From Askmonty.org

Jump to: navigation, search

MariDB 5.1 vs. 5.2-wl86 sysbench benchmark comparison in % Each test was run three times for 5 minutes.

                  Number of threads
                    1       4       8       16      32      64      128
sysbench test
 delete            107.28   94.70   98.10  107.12   93.59   89.24   86.89
 insert            103.15  105.13  101.75  102.78  101.52  100.29  100.89
 oltp_complex_ro   101.31  101.77  100.41   98.72   98.53  101.59  100.44
 oltp_complex_rw   Dup key errors (due to sysbench)
 oltp_simple       102.28  100.76  102.70  100.94  101.05  101.81  102.06
 select            100.88  101.05  100.48  101.61  101.48  101.87  101.44
 update_index       97.57   96.81   93.58  102.43   89.19  107.63   88.29
 update_non_index  101.58   83.24  110.46   94.52  106.33  103.87  115.22

(MariaDB 5.1 key_cache_partitions off q/s /

MariaDB 5.2-wl86 key_cache_partitions off q/s * 100)

key_buffer_size = 512M

Benchmark was run on work: Two socket quad-core Intel Xeon 3.00GHz

MariaDB and MySQL was compiled with

 BUILD/compile-amd64-max

MariaDB 5.1 revision was:

 revno: 2821
 committer: Sergei Golubchik <sergii@pisem.net>
 branch nick: maria-5.1
 timestamp: Tue 2010-02-23 13:04:58 +0100
 message:
   fix for a possible DoS in the my_net_skip_rest()
 

MariaDB 5.2-wl86 revision was:

 lp:~maria-captains/maria/maria-5.2-wl86
 revno: 2742
 committer: Igor Babaev <igor@askmonty.org>
 branch nick: maria-5.2-keycache
 timestamp: Tue 2010-02-16 08:41:11 -0800
 message:
   WL#86: Partitioned key cache for MyISAM.
   This is the base patch for the task.

sysbench was run with this parameters:

 --oltp-table-size=20000000 \  # 20 mio rows
 --max-time=300 \
 --max-requests=0 \
 --mysql-table-engine=MyISAM \
 --mysql-user=root \
 --mysql-engine-trx=no \
 --myisam-max-rows=50000000"

and this variable part of parameters

 --num-threads=$THREADS --test=${TEST_DIR}/${SYSBENCH_TEST}

Configuration used for MariDB:

 --no-defaults \
 --datadir=$DATA_DIR \
 --language=./sql/share/english \
 --key_buffer_size=512M \
 --max_connections=256 \
 --query_cache_size=0 \
 --query_cache_type=0 \
 --skip-grant-tables \
 --socket=$MY_SOCKET \
 --table_open_cache=512 \
 --thread_cache=512 \
 --tmpdir=$TEMP_DIR"
#  --key_cache_partitions=7 \