ページ ツリー
メタデータの末尾にスキップ
メタデータの先頭に移動

ほんとはお買い得RAIDカードにずらっと並べていたのですが、あまりにもデータが多くて見づらくなったので分割しました。

PCブラウザで見ている場合、ブラウザをめいっぱい横に広げると多少グラフの比較がしやすくなります。

NEC N8103-130 (Megaraid SAS 9264-8i)

スペック

  • チップ LSI SAS2108
  • メモリ 256MB、DDR2-800MHz
  • リンク速度 x8@PCI-E2.0

RAID5/6 用キー付きのモデルです。購入時はバッテリ付きで1枚3000円程度でした。手元にあった物はFW 2.0.43-0991の物ですが、何故か最初からSATA6Gでリンクしており、実際にそれに近い速度が出ています。Webの伝聞を見る限り SATA3Gでしか使えないらしいのですが、何故そうなっているのか謎です。

NEC のファームウェア更新履歴には特に6G対応について記述はありませんが、「SSDを正しく認識するにはバージョン14.00.1026以降のドライバが必 要」とあり、ドライバはWindows 10のInboxドライバを使っているのですが、この辺で何か変わったのでしょうか。

BBUもあるのですが、充電を待つのが面倒だったのでBBU無しでForce WBで検証しています。また、過去の経験により、LSIのカードの設定については

    • SSDの場合、NoReadAhead,Direct IOにした方が大体良い結果が出る
      • SSDの場合は性質上先読みが無くても十分早い上、先読みが外れるコストの方がRAIDコントローラにとっては大きいらしい
      • Cached IOにすると、読み込み時に ディスク→キャッシュメモリ→OS と言う順になるらしく、SSDの場合はキャッシュへ載せるオーバーヘッドの方が大きい
    • SSDの場合、Diskcacheを有効にしてあげないと書き込み最適化が出来ず寿命にも影響する
      • エンプラ向けSSDはでかいキャパシタを持っているので電源断でもSSD上のDRAMのデータは消失せずにすむけど…

と言う傾向があるので、それを踏まえた上で個人的に気になった以下のパターンを確認しています。

  • 1Disk-RAID0 WriteThrough
  • 1Disk-RAID0 WriteBack
  • 4Disk-RAID0 WT
  • 4Disk-RAID0 WB
  • 4Disk-RAID5 WT
  • 4Disk-RAID5 WB

ディスクのストライプサイズはデフォルトの64K固定です。

1Disk-RAID0 WriteThrough

何気にAHCIよりIO性能が高い…。SSD自体に256MBのDRAMが載っているので、そもそもカード自体のDRAMが不要な可能性があります。

CDMの4G、100MBリードの参考値です。ちなみにDiskcacheを無効にするとシーケンシャルでも書き込みが45MB/s程度まで落ちました。




1Disk-RAID0 WriteBack

5GBというキャッシュに乗り切らないサイズのせいか、違いがぜんぜんわからん!

WTモード時とのデータの向上率の比較をしてみる


Access Specification Name対WT比Read IOps 増分(%)対WT比Write IOps増分(%)
512 B; 100% Read; 0% random_QD1-44.27840
512 B; 100% Read; 0% random_QD32-2.246020
512 B; 50% Read; 0% random_QD1103.7055102.828
512 B; 50% Read; 0% random_QD32181.8043183.2034
512 B; 0% Read; 0% random_QD10101.8742
512 B; 0% Read; 0% random_QD320-39.6489
4 KiB; 100% Read; 0% random_QD1-34.77720
4 KiB; 100% Read; 0% random_QD32-29.60010
4 KiB; 50% Read; 0% random_QD1-0.77824-1.62854
4 KiB; 50% Read; 0% random_QD32-9.38483-9.62174
4 KiB; 0% Read; 0% random_QD1090.90597
4 KiB; 0% Read; 0% random_QD320-41.4706
256 KiB; 100% Read; 0% random_QD1-1.214280
256 KiB; 100% Read; 0% random_QD323.8310430
256 KiB; 50% Read; 0% random_QD17.1405738.666481
256 KiB; 50% Read; 0% random_QD32-21.9534-21.8982
256 KiB; 0% Read; 0% random_QD1012.71637
256 KiB; 0% Read; 0% random_QD320-0.00466
1M-Seq-100%R_QD10.1833230
1M-Seq-100%R_QD324.4696010
1M-Seq-50%R_QD1-3.69594-5.69608
1M-Seq-50%R_QD32-7.78602-8.20952
1M-Seq-100%W_QD10-0.63321
1M-Seq-100%W_QD3200.440793
1M-rand-100%R_QD1-7.91010
1M-rand-100%R_QD32-25.52830
1M-rand-50%R_QD1-10.3011-14.8897
1M-rand-50%R_QD32-18.1436-17.3741
1M-rand-100%W_QD10-7.48275
1M-rand-100%W_QD320-5.91396

0%でキャッシュ無し時と同じなので、512 B; 100% Read; 0% random_QD1の-44%というのは、キャッシュを有効にすると逆に性能劣化が起きてキャッシュ無しの半分の性能になっているパターンです。

512BアクセスのRead50%/Write50%時はキャッシュを有効にすると無しに比べて+200%になるので、WTの3倍近い性能向上を得られますが、それ以外の場合は大体性能劣化が起きているようです。

WBの効果が出ているかCDMも走らせてみましたが、キャッシュに収まる100MBでテストしたところキャッシュ速度はずいぶんと速いようです。



4Disk-RAID0 WT

IOPS的にいえば1ディスク構成時の90kからあまり増加はないので、コントローラ的には90kIOPSくらいが限界のようです。

一方、ディスクの読み込みについては1ディスク構成時に最大450MB/sだったのが4本構成で約1800MB/sなので、順当に伸びているようです。

こ れらから、最大90kIOPSか2GB/sまでの帯域のどちらかがに触れない範囲で使う事になりそうです。いずれにしても、IOPSについてはHDDでは 間違いなく到達できない範囲なので、HDDで運用する限りRAIDカードがネックになると言うことはないと思われます。

HDDを16台くらいぶら下げれば、帯域の方はシーケンシャルIOで上限にあたる可能性がありますが、それなりにがんばらないと到達できないと思います。


4Disk-RAID0 WB

例によってWT/WBの対比が分からないので増分


Access Specification Name対WT比Read IOps 増分(%)対WT比Write IOps増分(%)
512 B; 100% Read; 0% random_QD1-38.39260
512 B; 100% Read; 0% random_QD32-10.46960
512 B; 50% Read; 0% random_QD1105.3036105.2979
512 B; 50% Read; 0% random_QD32182.4146183.829
512 B; 0% Read; 0% random_QD10100.2315
512 B; 0% Read; 0% random_QD320-31.7521
4 KiB; 100% Read; 0% random_QD1-15.35250
4 KiB; 100% Read; 0% random_QD32-9.962260
4 KiB; 50% Read; 0% random_QD14.4516383.060278
4 KiB; 50% Read; 0% random_QD32-5.8848-5.67845
4 KiB; 0% Read; 0% random_QD1078.77088
4 KiB; 0% Read; 0% random_QD320-44.7767
256 KiB; 100% Read; 0% random_QD1-13.18050
256 KiB; 100% Read; 0% random_QD321.1935010
256 KiB; 50% Read; 0% random_QD117.6612715.54095
256 KiB; 50% Read; 0% random_QD320.8095172.130234
256 KiB; 0% Read; 0% random_QD10-7.04535
256 KiB; 0% Read; 0% random_QD320-18.4334
1M-Seq-100%R_QD1-2.466640
1M-Seq-100%R_QD322.4631720
1M-Seq-50%R_QD1-3.53151-4.23811
1M-Seq-50%R_QD32-2.97517-3.60646
1M-Seq-100%W_QD10-20.8247
1M-Seq-100%W_QD320-12.7551
1M-rand-100%R_QD1-1.110880
1M-rand-100%R_QD324.7780210
1M-rand-50%R_QD1-4.51558-6.17381
1M-rand-50%R_QD324.0557173.391034
1M-rand-100%W_QD10-10.4651
1M-rand-100%W_QD320-13.909

CDMでも似た傾向がみれます。



4Disk-RAID5 WT

読み込みはRAID0の1.8GB/sに対して、RAID5でも最大約1.6GB/sと優秀なのですが、書き込みは最大でも300MB/sと残念なことに。

RAID0の時は512BQD32の書き込みが66kIOPSあったのに対して、RAID5の時は26kIOPSまで落ちたので、やはりパリティー計算が必要なRAIDのオーバーヘッドは大きいです。



4Disk-RAID5 WB


Access Specification Name対WT比Read IOps 増分(%)対WT比Write IOps増分(%)
512 B; 100% Read; 0% random_QD1-80.90080
512 B; 100% Read; 0% random_QD32-24.74160
512 B; 50% Read; 0% random_QD10.3743550.015933
512 B; 50% Read; 0% random_QD3267.3972867.56659
512 B; 0% Read; 0% random_QD10482.0557
512 B; 0% Read; 0% random_QD32066.55948
4 KiB; 100% Read; 0% random_QD1-77.37430
4 KiB; 100% Read; 0% random_QD32-10.14110
4 KiB; 50% Read; 0% random_QD1-7.2077-5.82038
4 KiB; 50% Read; 0% random_QD3246.4411646.29059
4 KiB; 0% Read; 0% random_QD10479.8198
4 KiB; 0% Read; 0% random_QD32098.44912
256 KiB; 100% Read; 0% random_QD111.124180
256 KiB; 100% Read; 0% random_QD326.0394540
256 KiB; 50% Read; 0% random_QD159.6797161.75022
256 KiB; 50% Read; 0% random_QD328.0590767.317294
256 KiB; 0% Read; 0% random_QD10159.8849
256 KiB; 0% Read; 0% random_QD320130.9874
1M-Seq-100%R_QD13.9511610
1M-Seq-100%R_QD325.2726360
1M-Seq-50%R_QD160.7914861.17785
1M-Seq-50%R_QD3214.3281116.1741
1M-Seq-100%W_QD10174.7787
1M-Seq-100%W_QD32094.76335
1M-rand-100%R_QD11.7220710
1M-rand-100%R_QD328.1867690
1M-rand-50%R_QD157.8420661.04148
1M-rand-50%R_QD3216.9375516.22543
1M-rand-100%W_QD10147.958
1M-rand-100%W_QD32019.62272

通説通り、RAID5の時はWBキャッシュがあると性能向上があります。512BQD32の書き込みがWT時には26kIOPSでしたがWB時には44kIOPSまで上がりました。

また、RAID0の時と違い、大体の場合において性能が上がりました。

CDMでも似た傾向は出ましたが、たとえば4KQD32時の書き込みがIOMeterだとWB時に121MB/s出ているのに対して、CDMだと35MB/sになっているなど、結構違いが出ているので参考値です。


まとめ

4000円前後で買える割にはそこまで悪くないと思います。RAID5で運用する際にはBBU+キャッシュを、0で運用する際にはキャッシュしない設定にする、と言うのがベストのようです。



コメントを書く…