『問題解決型』ハードウェアメーカー
ファナティック
-
- ファナティックの特長 ファナティックの特長
- /
- 製品&ソリューション 製品&ソリューション
- /
- 導入事例 導入事例
- /
- 最新ニュース 最新ニュース
- /
- ファナティックレポート ファナティックレポート
- /
- サポート サポート
- /
- 会社案内 会社案内
- /
- 採用情報 採用情報
2019.12.27 ベンチマークレポート
Intel® の最新CPUであるCascade Lake-SPで新たにサポートされた機能の1つに、Intel® Optane™ DC Persistent Memory(以下、「DCPMM」という。) があります。
前回は、実装からOS設定、設定確認の手順について解説いたしました。詳しくは
「Intel Optane DC Persistent Memoryのご紹介~実装・設定方法~」をご覧ください。
今回は、Persistent MemoryのMemoryモード、App DirectモードのStorage over App Directモード(従来ストレージ)とDAXモード(File system DAX)の動作モードについて、それぞれSTREAM、FIOのベンチマークソフトを使用し、メモリ帯域、ストレージ性能を測定いたしました。
Persistent Memoryの実装構成による比較、FIOはSSD、HDDと比較した結果をご報告いたします。また、コスト面からの比較もあわせてご報告いたします。
まず、App Direct(AD)モードのアクセス方法について説明します。2つのファイルシステムのアクセス方法があり、下記に特徴を記載いたします。
※色付きの箇所は、新たにADモードを利用する上で追加されました。
Storage over App Direct (従来ストレージ) |
DAX (File system DAX) |
|
用途例 | 従来のアプリケーションをそのまま利用 | 従来のアプリケーションをDCPMM用に改版 |
対応ファイルシステム | サポートされているファイルシステム全て | xfs, ext4(Linux) NTFS(Windows) |
性能 | △ OSの処理が多いため本来の性能が発揮できない |
○ ファイルに直接アクセスが可能 |
冗長性の確保 | mdドライバ/LVMなどの仕組みでSoft RAIDが可能 | ハード・OSでは現状不可 |
上記に示す通り、用途によってアクセス方法の選択が可能です。
Storage over App Directモードは、HDDやSSDなどと同じ従来のアクセス方法のため、現在使用しているアプリケーションをそのまま利用することが可能です。しかし、アクセス性能はDCPMMに最適化されていないため、DAXモードに比べ性能が低いと言われています。DAXモードは、DCPMMに対応したアプリケーションのファイルシステムに変更する必要があります。変更したアプリケーションは、ユーザープログラムからDCPMMに直接アクセスが可能となるため、ファイルシステムの中では最も性能が高いと言われています。
●構成
構成は、DCPMMの使用に全て対応しています。詳しい使用条件についてはこちらをご覧ください。
仕様 | |
マザーボード | Supermicro X11 DPG-QT (BIOS ver.3.1) |
CPU | Xeon Platinum 8276 ×2 |
DRAM(メモリ) | DDR4-2133 8 GB×12(96 GB) |
DCPMM | Intel® Optane™ DC Persistent memory 128 GB×4(512 GB) |
SSD | Intel® 530 Series 240GB 2.5inch SATA3 MLC |
HDD | Seagate ST3500630AS (500GB SATA300 7200rpms) |
OS | SUSE Linux Enterprise Server 12 SP 4 |
ベンチマークソフト | STREAM FIO (ver.3.14) |
●DCPMMとDRAMの実装構成環境
使用したマザーボードはDCPMM実装構成の2構成に対応しているため、下記の構成で比較しました。
構成 | DCPMM | DRAM | 合計[枚] |
2-1-1 | 4 | 12 | 16 |
1-1-1 | 4 | 8 | 12 |
1-1-1(w/o DCPMMs) | – | 12 | 12 |
※DRAMのメモリ動作周波数が2133 MHzのため、DCPMMの動作周波数も2133 MHzで動作しております。
上記の環境、構成で測定を実施しました。
・Memoryモード:STREAMを使用し、メモリ帯域を測定
・ADモード:Interleavedに設定。FIOを使用し、ストレージ性能を測定。他ストレージと比較
実装構成のw/o DCPMMsはDCPMMを実装せず、DRAMのみの実装を意味しています。
それでは、測定結果について報告をいたします。
DIMMの構成を2-1-1、1-1-1、1-1-1(w/o DCPMMs)にし、STREAMで測定をしました。4項目に対するメモリ帯域幅を示しています。
Copy、Scale、Addを組み合わせたTriadで各構成の比較をすると、2-1-1、1-1-1(w/o DCPMMs)、1-1-1構成の順に高いことが分かりました。下記に1-1-1(w/o DCPMMs)、1-1-1構成に対する各構成の比率を示します。
比率(対1-1-1 w/o DCPMMs) | 比率(対1-1-1) | |
2-1-1 | 1.02 | 1.03 |
1-1-1 | 0.99 | 1 |
1-1-1(w/o DCPMMs) | 1 | 1.01 |
これらの結果から、比較した構成では、メモリ帯域の影響はあまりないと言えます。よって、1-1-1(w/o DCPMMs)、即ちDRAMのみの構成と比較しても、DCPMMのMemoryモードのメモリ帯域性能は遜色ない結果であることが分かりました。大容量メモリを実現したい場合、DRAMだけでなく、1枚あたりの容量が多く、安価なDCPMMを組み合わせて実装することでメモリ帯域のパフォーマンスを下げることなく、コストを下げることも可能であると考えられます。
Storage over App Directモード(sector/従来のストレージアクセス方法)をFIOで測定し、SSD、HDDと比較しました。Storage over App Directモードは2-1-1、1-1-1構成、SSD、HDDは1-1-1(w/o DCPMMs)構成としました。DCPMMはストレージとして利用するため、メモリ容量はDRAMのみです。
※DCPMMは約240 GB(1 CPU分)のストレージを指定し、CPUの指定はせずに測定いたしました。
下記にThread= 32、iodepth= 32、ioengine= libaio(非同期IO)の条件で、Sequential Read/Write、Random Read/Writeについてブロックサイズを4k、64k、1Mにした時の
IOPS、Band Width(スループット)の結果を示します。
Sequential Read/Write、Random Read/WriteどちらもDCPMMは、当然ながらHDD、SSDに比べ、IOPS、Band Width共に高いことが確認できました。アクセス速度のDCPMM、SSD、HDDの順番とも一致しました。
ここで、ブロックサイズ4k Random ReadにおけるBand Widthの各ストレージに対する比率を下記に示します。
BW[MB/s] | 比率(対HDD) | 比率(対SSD) | 比率(対1-1-1構成) | |
HDD | 0.607 | 1 | 0.003 | 0.0004 |
SSD | 174 | 287 | 1 | 0.12 |
1-1-1 sector | 1,394 | 2,297 | 8 | 1 |
2-1-1 sector | 715 | 1,178 | 4.1 | 0.51 |
※IOPSについても、比率は同程度です。
表からHDDと比較すると、DCPMMは約1200~2300倍程度、SSDと比較すると4~8倍程度の性能が確認できました。従来のストレージアクセス方法でも、4k Random Readでは最大1.3 GB/s、64kでは最大1.8 GB/s、1Mでは最大1.2 GB/s 程度の伝送速度を確認しました。
また、4kのIOPS、Band Widthについて各構成のsectorモードをSSDの測定結果と共に示します。
1-1-1 sector | 2-1-1 sector | SSD | |
Sequential Read | 2,423,000 | 2,569,000 | 130,000 |
Sequential Write | 71,000 | 101,000 | 93,400 |
Random Read | 340,000 | 174,000 | 42,400 |
Random Write | 47,000 | 59,200 | 11,800 |
1-1-1 sector | 2-1-1 sector | SSD | |
Sequential Read | 9,925 | 10,500 | 533 |
Sequential Write | 295 | 412 | 382 |
Random Read | 1,394 | 715 | 174 |
Random Write | 193 | 242 | 48.3 |
SSDでは、Sequential Readは約530MB/s、Random Readは約170 MB/sの伝送速度ですが、DCPMMではSequential Readは約10GB/s、Random Readは約1.3 GB/sとなるため、読み込みにおいて高い伝送速度のストレージが必要な用途では特に効果が得られると考えられます。
今回のStorage over App Direct(sector)モードは従来のアクセス方法を用いるため、アプリケーションを変更することなく、利用することが可能な上にSSDと比較してSequential Readでは、約17~20倍、Random Readでは、約4~8倍の性能が得られる結果となりました。DCPMMの構成同士を比較すると、細かいファイルを頻繁に読み書きする場合は、1-1-1構成が良いと考えられます。
DCPMMのアクセス方法による比較をするために、従来のストレージアクセス方法であるStorage over App Direct(sector)モードとDAXモードで比較しました。DAXモードは、ページキャッシュをI/Oパスから削除し、直接アクセスをするため、ioengineは従来のioengineではなく、libpmemを使用しました。Storage over App Directモードはlibpmemと比較するためioengineはsync(同期IO)としました。
ThreadはCPUのコア数である28とし、1-1-1、2-1-1構成同士でRandom Read/WriteのBand Widthについて比較しました。
Random Readでは、4kでsectorとDAXを比較するとDAXモードが約2.5倍の10 GB/sの性能が得られました。1-1-1構成では64k以上において若干sectorモードが高い性能である結果となりました。Random Writeでは、構成によらず、各ブロックサイズでsectorモードに比べ、DAXモードが2~3倍程度の性能が得られました。
ブロックサイズ4k Random ReadにおけるBand Widthを各構成のsectorモードに対する比率を下記に示します。
BW[MB/s] | 比率(対1-1-1 sector) | 比率(対2-1-1 sector) | |
1-1-1 sector | 4,266 | 1 | 1.01 |
1-1-1 DAX | 9,923 | 2.3 | 2.3 |
2-1-1 sector | 4,249 | 0.99 | 1 |
2-1-1 DAX | 10,300 | 2.5 | 2.4 |
※IOPSについても、比率は同程度です。
DAXモードの実装構成による性能差はあまり見られませんでしたが、2-1-1構成の方が1-1-1構成に比べ若干性能が高いため、より高パフォーマンスでの動作を要求する場合は2-1-1構成が良いと考えられます。
4kのIOPS、Band Widthについて測定結果を下記にまとめました。
1-1-1 sector | 1-1-1 DAX | 2-1-1 sector | 2-1-1 DAX | |
Random Read | 1,041,000 | 2,423,000 | 1,037,000 | 2,525,000 |
Random Write | 111,000 | 382,000 | 112,000 | 387,000 |
1-1-1 sector | 1-1-1 DAX | 2-1-1 sector | 2-1-1 DAX | |
Random Read | 4,266 | 9,923 | 4,249 | 10,300 |
Random Write | 455 | 1,566 | 461 | 1,586 |
DAXモードにおけるRandom Readは10 GB/s程度でsectorモードの約2.5倍の性能が得られ、Random Writeは1.5 GB/sで約3倍のため、DAXモードを使用することで従来の方式に比べ高性能なストレージ性能が得られると考えられます。
※DAXモードのSequentialの測定結果が異常に高い値となり、原因が現在判明しておりません。今回はRandomのみの比較を載せております。
また、Thread= 1における、4kのRandom WriteでのIOPS、Band Width、レイテンシを示します。
IOPS | BW[MB/s] | Avg Latency[ns] | |
1-1-1 sector | 113,000 | 462 | 8,240 |
1-1-1 DAX | 723,000 | 2,963 | 897 |
2-1-1 sector | 111,000 | 454 | 8,420 |
2-1-1 DAX | 729,000 | 2,987 | 889 |
レイテンシに着目すると、DAXモードにすることで、従来のアクセス方法の約10分の1の900 ns程度の低レイテンシを実現しています。レイテンシの観点からもDAXモードはsectorモードに比べて良い結果となりました。
従って、DAXモードにすることで、低レイテンシを実現し、DCPMM本来の高性能なストレージとして利用することが可能です。構成は1-1-1と2-1-1では、2-1-1構成がおすすめです。ただし、DAXモードに対応したアプリケーションに変更する必要があり、障害に対しての冗長は現状ハード・OSでの確保が不可のため、注意が必要です。(※2019年12月時点)
DCPMMをMemoryモードとし、DRAMのみと比較してHDDのストレージ性能に変化があるか確認をしました。構成は、1-1-1構成としました。
Sequential Read/Write、Random Writeでは、DCPMMを実装することによって、伝送速度が向上したことが確認できました。特に、Sequential Read/Writeで効果があり、4kで各々22倍、2.5倍程度の性能向上が確認できました。
ストレージはHDDのままであっても、DCPMMのMemoryモードを使用することによって大容量の書き込みキャッシュとして動作するためHDDへの伝送速度があがったと考えられます。こういった使い方も利用手段の1つになるのではないでしょうか。
最後に、パフォーマンス面だけでなく、コスト面について比較します。DCPMMは現在、1枚 128 GBから選択することが可能なため、128 GBあたりの単価を比較します。SSD、DCPMM、DRAMについて下記の通りです。
SSD(エンタープライズ向け) | DCPMM | DRAM | |
容量単価 | 約1.5万円 | 約5万円 | 約20万円 |
DCPMMとDRAMを比較すると、約4倍の価格差があります。(※2019年12月時点)
ここで、2-1-1構成(1CPU 構成)、Memoryモードを使用すると仮定した場合のコストをDRAMのみで実装した場合と比較してみます。単価については上記として計算しました。
※あくまで価格差の目安となります。
Memoryモードは、DCPMMはメモリ、DRAMはメモリまたはメモリキャッシュとして動作します。
●2-1-1構成(DIMM 8枚)でメモリ容量256 GBを実装しようとした場合
DRAMのみの実装と比較すると、一般利用で価格差は約1.5倍です。今回はDCPMM 128 GBで比較しましたが、最大512 GBです。安価で大容量を可能にすることが出来るため、パフォーマンス面だけでなく、コスト面においてもGB単位のコスト低減が可能です。
※DCPMMには使用条件がございます。
詳しいコスト面についてはお問い合わせください。
Intel® Optane™ DC Persistent Memoryの動作モードであるMemoryモード、App Directモード(Storage over App Direct、DAX)について、それぞれメモリ帯域、ストレージ性能について測定し、比較いたしました。
メモリとして使用するMemoryモードでは、DRAMに引けを取らない伝送速度の性能が得られました。ストレージとして使用するApp Directモードでは、Storage over App Direct(従来のストレージアクセス方法)とSSD、HDDと比較すると、Random ReadではSSDの約4~8倍の性能が得られることが明らかとなりました。DCPMMの2種類のアクセス方法による違いではファイルシステムに直接アクセスするDAXモードにすることで、従来のアクセス方法に比べ、4k Random Readで約2.5倍の10 GB/sの性能になることが明らかとなりました。ただし、使用するアプリケーションをDAXモードに対応させる必要があり、障害に対する対応は、現状ハード・OSでは不可のため、扱いに注意が必要です。(※2019年12月現在)
また、DIMMの構成は、今回測定した1-1-1、2-1-1構成ではMemoryモード、App Directモード共に2-1-1構成がおすすめです。
App DirectモードのInterleaved設定はストライピングつまりRAID0を組んでいるのと同等のため、今回は、1 CPUあたり2枚でInterleavedしましたが、最大6枚でInterleavedが可能です。そのため、6枚で構成した場合、上記の測定結果よりも高い性能が得られる可能性があります。
今後、今回測定していない2-2-2(DCPMM 6枚)構成やNVMeとの比較もしていく予定です。
ストレージ、メモリどちらも選択可能でコスト面においても、DRAMに比べ安価です。DCPMMを導入してみてはいかがでしょうか。
DCPMMを搭載した製品ございます。DCPMMの構成や枚数、容量などのご相談もお気軽にお問い合わせください。
お客様のご要望に合った構成をご提案いたします。