power8サーバでmariadbベンチマーク

23
POWER8 ササササ MySQL MariaDB ササササササ 第 2 第 MySQL PostgreSQL 第第第第第第第 (MyNA JPUG) 第第 DB 第第第 2016/02/20

Upload: datahotel

Post on 10-Jan-2017

631 views

Category:

Internet


2 download

TRANSCRIPT

POWER8サーバでMySQLMariaDBベンチマーク第 2 回 MySQL ・ PostgreSQL ユーザグループ (MyNA ・JPUG)合同 DB 勉強会2016/02/20

謝辞• POWER サーバを借用させて頂き、またこうして発表する事を許可して頂いた日本アイ・ビー・エム様、有難うございました

免責事項• 本資料は個人の見解であり、私が所属する組織および日本アイ・ビー・エム様の見解とは必ずしも一致しません

POWERサーバについて

個人的に驚いた特徴• 1CPU ですが OS からは NUMA として認識される# numactl —hardwareavailable: 2 nodes (0-1)node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39node 0 size: 65536 MBnode 0 free: 44167 MBnode 1 cpus: 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79node 1 size: 65536 MBnode 1 free: 45400 MBnode distances:node 0 1 0: 10 20 1: 20 10 #

環境

ベンチマーク環境 1

• POWER 812L• POWER8E 3.42GHz

(1P10C10T,20T,40T,80T)• MEM 16GB x 8 = 128GB• HDD 300GB x 8, 15k rpm (RAID10)• CentOS 7.2 (3.10.0-327.4.4.el7.ppc64le)

ベンチマーク環境 2(比較対象 )

• HP DL360 G8v2• Intel Xeon E5-2667 v2 3.30GHz x 2 (2P16C32T)• MEM 16GB x 8 = 128GB• SAS HDD 600GB x 4, 10krpm (RAID10)• NIC Intel I350• CentOS 6.7(2.6.32-573.8.1.el6.x86_64)

ベンチマーク環境 3

• HP DL360 G8v2• Intel Xeon E5-2643 v2 3.50GHz x 2 (2P12C24T)• MEM 8GB x 8 = 64GB• ioDrive2 785G (Driver version: 3.2.6)• NIC Intel I350• CentOS 6.6(2.6.32-504.12.2.el6.x86_64)

• MariaDB10.1.10• MySQL 5.7 は POWER サーバでは不安定であったため、現時点では検証対象外としました

• File System• 環境 1 xfs (nobarrier)• 環境 2 ext4 (nobarrier)

• ベンチマークソフト• sysbench 0.5 (3 回取得し平均で評価 )

• git clone https://github.com/hgxl64/sysbench-mariadb.git• LinkBench (1 回のみの実行 )

my.cnf(主なもの )

• innodb_buffer_pool_size = 40G• innodb_buffer_pool_instances = 20• innodb_log_buffer_size = 64M• innodb_log_file_size = 1G• innodb_log_files_in_group = 16• innodb_flush_method = O_DIRECT• innodb_thread_concurrency = 0

• innodb_flush_log_at_trx_commit = 1• performance_schema_instrument =

'%sync%=on'• innodb_monitor_enable = 'all'• sync_binlog = 1• query_cache_type = 0• query_cache_size = 0

sysbench 0.5./bin/sysbench \ --test=./lua/oltp.lua \ --rand-init=on --db-driver=mysql --oltp-read-only=on \ --rand-type=uniform \ --oltp-tables-count=18 --oltp-table-size=3000000 \ --oltp_point_selects=1000 --oltp_sum_ranges=0 \ --oltp_simple_ranges=0 --oltp_order_ranges=0 \ --oltp_distinct_ranges=0 \ --mysql-socket=/var/lib/mysql/mysql.sock \ --mysql-db=sbtest5 \ --mysql-user=sbtest --mysql-password=sbtest-pw \ --max-time=60 --max-requests=0 \ --num-threads=${thread} \ run

以上を 8 並列で実行

LinkBenchのオプション• FBWorkload.properties にて maxid1 =

20000001 • linkdb で約 20GB

• 実行コマンド• /bin/linkbench -c config/LinkConfigPgsql.properties -D

maxtime=3600 -D requests=10000000 -D requesters=64 -r

ベンチマーク結果(sysbench)

8 16 32 64 128 256 512 1024 2048 40960

100000

200000

300000

400000

500000sysbench

smt=1 smt=2 smt=4 smt=8 Series5 Series6

8 16 32 64 128 256 512 1024 2048 40960

100000

200000

300000

400000

500000sysbench

smt=1 smt=2 smt=4 smt=8 環境 2 環境 3

8 16 32 64 128 256 512 1024 2048 4096smt=1 166207 195422 182711 164515 176495 177259 173108 171794 173900 172757smt=2 157947 253130 287378 251705 233499 235682 226686 221754 224315 218546smt=4 141481 230277 322376 362505 311665 297186 293364 294788 301439 285881smt=8 138130 212018 301840 382287 375013 319815 303358 296210 297829 293195環境 2 119779 240216 362312 363404 363266 362224 360097 358116 351428 338484環境 3 121951 213392 271949 271133 269413 264823 253655 217833 211657 208552• スレッド数が少ないうちは SMT は 1 または 2 が高速に動作• 32 スレッドを超えると SMT が多い方が高速となり、 64 スレッドをピークに減少傾向となった• シングルスレッド性能を求めるなら SMT は 1 で良さそう• ピーク性能は環境 2 より POWER サーバの方が高いが、スレッド数が多いと環境 2 が高くなる

• とはいえ CPU コア数に 6 個の差があるので十分かと思います

ベンチマーク結果(LinkBench)

ベンチマーク環境 1smt=1 25921smt=2 34292smt=4 43371smt=8 46179

ベンチマーク環境 2HT on 47549

• 環境 3 は PCI-E SSD 搭載機のため、 I/O 性能に差が有り過ぎるため比較対象外としています

• I/O ヘビーな環境においても SMT は最大の 8 が高性能• MariaDB では積極的に SMT を下げる必要はないと考えられます

• 2P8C16T の IA サーバの環境と比較しても遜色のない結果となった

まとめ• 10Core CPU の POWER サーバですが IA サーバの 2P12C24T よりも高速に動作する結果となり、 2P16C32T と比較しても遜色のない結果となった• POWER プロセッサでも CentOS や Ubuntu がサポートされ、 IA サーバ上とそれほど大きな差を感じない環境が整備されていると感じています

今後• SSD 搭載のラインナップもあるそうなのでそちらで

LinkBench の測定をしてみたい。2ソケットモデルも面白そう。• MySQL 5.7 が CPU アーキテクチャが違うためか、私が確認した範囲では LinkBench のロード中に落ちたり、 MySQL が正常終了しない事があったため、改善できたら測定したい

• sysbench のデータロード及び測定は正常動作したのですが、上記の理由により今回は発表からは除外しました