Fast, Reliable, Proven transactional storage for MySQL
Plugin
InnoDB Plugin 1.0.3 Modified Read-Write Sysbench Test with TCMalloc
This test employs the well-known Sysbench benchmarking tool that uses a simple read-write transactional workload. However, in this case, we’ve adopted some changes suggested by Mark Callaghan of Google, to add another column and secondary index to the sbtest table so that 50% of the queries in the test will use the secondary index.
In addition, instead of using the InnoDB internal memory manager, we use the new configuration parameter innodb_use_sys_malloc to allocate memory using a more scalable memory allocator, tcmalloc.
Results
The following chart shows the results of this test.
When using a memory allocator designed and tuned for multi-threaded applications (and multi-core platforms), the InnoDB Plugin shows markedly better scalability and performance. Transaction throughput continues to scale beyond 8 users, and the actual throughput with 64 users has nearly doubled as compared with the built-in InnoDB in MySQL!
Hardware configuration
Dual quad-core Intel Xeon, 3.00GHz, 32 GB memory
MySQL / InnoDB configuration
Relevant my.cnf parameters:
query-cache-type=0
query-cache-size=0
table-open-cache=2048
innodb-data-file-path=ibdata1:500M:autoextend
innodb-additional-mem-pool-size=500M
innodb-log-file-size=2047m
innodb_adaptive_hash_index ON
innodb_buffer_pool_size 17,179,869,184
innodb_checksums ON
innodb_commit_concurrency 0
innodb_concurrency_tickets 500
innodb_doublewrite ON
innodb_file_format Antelope
innodb_file_format_check Antelope
innodb_file_io_threads 4
innodb_file_per_table ON
innodb_flush_log_at_trx_commit 1
innodb_flush_method O_DIRECT
innodb_force_recovery 0
innodb_lock_wait_timeout 50
innodb_locks_unsafe_for_binlog OFF
innodb_max_dirty_pages_pct 90
innodb_max_purge_lag 0
innodb_mirrored_log_groups 1
innodb_open_files 300
innodb_replication_delay 0
innodb_rollback_on_timeout OFF
innodb_stats_on_metadata ON
innodb_stats_sample_pages 8
innodb_strict_mode OFF
innodb_support_xa ON
innodb_sync_spin_loops 20
innodb_table_locks ON
innodb_thread_concurrency 0
innodb_thread_sleep_delay 10000
innodb_use_sys_malloc ON
