Intel SSD 320とCrucial C300のベンチマーク 〜私のシーケンシャルリード性能は53万です〜
サブタイトルは釣りです.前回の記事の続き.
今回はSSD.元々そういやSSDが身近になったけれど,体感的にどれくらい速いのかわからないなぁ.というわけでカッとなって買ってしまった天下のIntel SSD 320と巷で高速と評判のCrucial C300の比較を行う.
購入したのは,以下の2本.Intel SSD 320シリーズの一番安いやつと,巷で評判が良いCrucial RealSSDの一番安いC300をチョイス.
- Intel 320 Series SSDSA2CT040G3K5 (40GB)
- Crucial RealSSD C300 CTFDDAC064MAG-1G1 (64GB)
Intel SSD 320 Series(Postville-Refresh) 2.5inch MLC 9.5mm 40GB ResellerBOX SSDSA2CT040G3K5
- 出版社/メーカー: インテル
- 発売日: 2011/04/12
- メディア: Personal Computers
- クリック: 1回
- この商品を含むブログ (1件) を見る
CTFDDAC064MAG-1G1 64GB Crucial RealSSD C300 2.5-inch SATA 6GB/s
- 出版社/メーカー: Crucial
- メディア:
- この商品を含むブログを見る
今回はSSDの性能をいかんなく発揮するため,オンボードのSATAポートなぞ温いのでSATA 6.0GbpsカードをPCIに刺して利用.モノはたしか,これ↓
- 出版社/メーカー: 玄人志向
- 発売日: 2009/11/30
- メディア: Personal Computers
- クリック: 5回
- この商品を含むブログ (2件) を見る
実験条件は基本的に前回と同じ
- 実験条件
- ベンチマークツール
- bonnie++-1.03e (ヘッダファイルを変更)
- 実験方法
- bonnie++の実行結果を取得
- 実メモリの倍の容量がないので,オプションで -s 30000(MiB) -r 10000(MiB) を指定
- -rは書き込み読み込みサイズ,-sは使用メモリ量
実験1
残念ながらIntel SSDの容量がメモリの2倍ないため上記オプションで実行 (実験1).
- 実験1
# Intel SSD 320 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP myhost 32000M 53429 47 52740 4 36157 3 74444 71 300954 11 17572 15 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 104590 99 875585 85 156804 99 107920 100 1375875 100 155278 98 # Crucial C300 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP myhost 32000M 82411 71 87386 6 55738 5 87143 84 532979 19 21579 20 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 104969 97 894761 87 158443 100 108634 100 1394158 102 157783 100 myhost,32000M,82411,71,87386,6,55738,5,87143,84,532979,19,21578.7,20,16,104969,97,894761,87,158443,100,108634,100,1394158,102,157783,100
出たー!! ついにシーケンシャルリードで520MB/s (参考値) が出た.Intel 320に比べてCrucial C300の方がシーケンシャルリードにおいて相当高い値を示した.
- 320: 293.9 MB/s
- C300: 520.5 MB/s
速っ! まさに
「私の戦闘力 (シーケンシャルリード性能) は53万 (KByte/sec) です」
520.5MB/sなんて数字が出るとは思っていなかったので,思わずよだれが出てしまった.Random Seeks (IOPS) で比較すると,
- Intel 320: 17572 IOPS
- Crucial C300: 21579 IOPS
こちらもCrucial C300の方が高いパフォーマンス.いずれにせよSSDらしく,驚異的なIOPSが出ている.
IOPSはその名の通り,秒あたりのIO回数.bonnie++ちゃんはlseekして,ちょっとreadして,ちょっとwriteしているみたい.詳細は本家をご参照.
今,巷で人気のFusion-IOのIOPSはどれくらいだろうとぐぐってみたら,"ioDrive DUO 320GB, SLC タイプの場合、26万IOPS"(http://storage-talk.cozax.com/2010/12/20/fusion-io-iodrive/) という数字を見つけた.DuoってRAID0相当のことだと思うので2で割って,SLC -> MLC換算で更に2で割って考えても6.5万IOPS.速ぇ.Fusion-IOのウリはレイテンシなのでIOPSだけで比較はできないけれど..QUADにできるかわからないけれど,リアルに「私のIOPSは53万です」も近い世界ですわ.
実験2
Crucial C300は64GBあるので,デフォルト設定で実行可能.実験2では前回のWD20EARXの2TB HDD最外周部における結果と併記する.
- 実験2
# Crucial C300 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP myhost 48312M 78805 71 80993 6 55418 5 91983 88 455278 17 11446 14 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 102392 99 869921 106 155183 98 106936 101 1365242 100 156846 99 myhost,48312M,78805,71,80993,6,55418,5,91983,88,455278,17,11446.3,14,16,102392,99,869921,106,155183,98,106936,101,1365242,100,156846,99 # WD20EARX 最外周部 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP myhost 48312M 114205 96 118003 9 31951 3 83020 81 145385 5 210.6 0 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 97039 97 853774 83 152938 100 104650 99 1324712 97 152024 100 myhost,48312M,114205,96,118003,9,31951,3,83020,81,145385,5,210.6,0,16,97039,97,853774,83,152938,100,104650,99,1324712,97,152024,100
Crucial C300は実験1に比べて全体的に控えめな数字が出た.残念ながら53万は出なかった.特にIOPSがかなり低い.シーケンシャルリードは下がったとはいえ,444.6MB/sを出している.こっちの方が実際の値に近いのだろうか.
HDDと比べてみると,シーケンシャル書き込み性能はHDDの方が高いことがわかる.RewriteはどうやらSSDの方が高い.Rewriteは
1.3 Rewrite
ファイルのチャンク(現在は16384バイト)は、read(2) で読み込まれ、内容が変更され、write(2) を使って書き込まれる。lseek(2) が使われる。ファイルスペースのアロケーションは発生しないので、I/O は、局所化される。このテストでは、ファイルキャッシュとデータ転送速度の効率がテストされることになる。
(http://d.hatena.ne.jp/yoshifumi1975/20080320/p2)
ということをやっているので,「readでSSD有利 + lseekでHDDのシーク発生」という2つのコンボが効いているのだと思う.
実際の利用シーンでどれくらいの差が出るかを検証したかったのだけれど,それを待っているとまた2年くらい経ちそうなので忘れないうちに結果だけ載せておく.
あと,いろいろチューニングしたらまだ速くなるのかわからないけれど,ゆとりはデフォルト設定が大好きなので,それで満足のいく数字出たから深追いしない.ファイルシステムによってread性能がどれだけ変わるかも興味深かったけれど,後でやる.
結論,SSDすごい (投げやり)