(2023年2月)
DRAMキャッシュ非搭載SSDの中には、HMB(Host Memory Buffer)に対応しているものがある。
例えば、シリコンパワーのP34A60シリーズは、HMBに対応している。
「ホストドライバがSSDのためにシステムメモリ(RAM)を割り当てるHMB(ホストメモリバッファー)により、効率が向上し最適なパフォーマンスが得られます。」
関連:PCIe Gen 3×4 P34A60 (シリコンパワー)
DRAMキャッシュを搭載しない代わりに、メインメモリー(RAM)を使ってキャッシュを行う。
HMBのサイズ(容量)には、最小容量と推奨容量があり、各SSDが値を持っており、OSに伝え、OSはその容量をHMB用として確保する仕組み。
最大容量は、目下64MB(メガバイト)であり、通常、RAMが数GB載っている昨今のPCに於いては、最大の64MBとなるべきだが、SSDによっては32MBと設定されるものがあり(Crucial等)、パフォーマンスが発揮できない(=速度低下)ので、念のために調べる。
関連:[SSD] P34A60 SP001TBP34A60M28のレビューとベンチマーク [シリコンパワー]
イベントビューアーで調べる
イベントビューアーを起動(eventvwr)し、右にある「カスタムビューの作成」をクリック。
ログの日付は「最大12時間」、イベントレベルは「情報」、「ソースごと」を選択し、イベントソースで「StorPort」を選び、「OK」をクリック。
「フィルターをカスタムビューに保存」の画面になるので、名前に「HMB」と入れて「OK」をクリック。
PCを再起動する。
イベントビューアーを起動し、左にある カスタムビュー>HMB と進み、イベントID(513)を選択すると、以下の情報が確認できる。
・Failure Reason:None
・Allocation Policy:Maximum
・Attemped to Allocate:0x4000000 bytes
・Actually Allocated:0x4000000 bytes ←確保した容量
・Device Minimum:0x2000000 bytes ←最小容量
・Device Preferred:0x4000000 bytes ←推奨容量
・Policy Maximum:0x4000000 bytes
この数字は16進数(HEX)なので、10進数(DEC)に直すと、
・Actually Allocated(確保した容量):67,108,864 bytes≒64MB
・Device Minimum(最小容量):33,554,432 bytes≒32MB
・Device Preferred(推奨容量):67,108,864 bytes≒64MB
となる。
なお、HEX→DECは、Windows11に搭載の電卓で計算可能。
電卓を起動(検索で「calc」)し、三本線で「プログラマー」を選択、「HEX」をクリックして「4000000」を貼ると、「DEC」に「67,108,864」が表示される。
てコトで、推奨容量が64MBとなっており、64MBが確保した容量であれば問題ない。
問題ないことを確認したら、作成したカスタムビュー(HMB)は削除しても構わない。
TxBENCHで調べる
TxBENCHを起動し、対象のSSDを選択、「IDENTIFY DEVICE 情報」タブを選び、説明で「Identify Controller Data Structure」を選択、その右の検索窓に「272-275」と入れて検索。
・”272-275″,””,”Host Memory Buffer Preferred Size (HMPRE) [1 unit = 4096 B]”,”4000″, ←推奨容量
・”276-279″,””,”Host Memory Buffer Minimum Size (HMMIN) [1 unit = 4096 B]”,”2000″, ←最小容量
最後の数字はユニット数で16進数であり、1ユニットは4,096バイトなので、
・推奨容量=16,384(10進数)×4,096バイト=67,108,864≒64MB
・最小容量=8,192(10進数)×4,096バイト=33,554,432≒32MB
となり、イベントビューアーで調べた値と同じとなる。
TxBENCHを使った方がイベントビューアーよりも簡単であるが、確保した容量は分からないので、イベントビューアーの方が確実ではある。
推奨容量が64MBではなく32MBとなっていた場合は、レジストリの編集で64MBにできるが、その方法は以下動画の「1:05:06」付近にて。
2023年2月時点では、HMB対応モデルでも、DRAMキャッシュ搭載モデルには及ばない(速度低下が生じる)ので、それ気にするなら、DRAMキャッシュ搭載品を選ぼう。
ただ、DRAMキャッシュ搭載品は高いので…という人は、Western DigitalのSN770シリーズが優秀。
・500GB:WDS500G3X0E
・1TB:WDS100T3X0E ←価格コム 2022年 銀賞
・2TB:WDS200T3X0E
一般的に、空き容量が減るとSLCキャッシュの領域も減るため、DRAMキャッシュ非搭載品の速度は低下する。
なので、現在の使用状況を踏まえ、空き領域に余裕を持てるモデルを選択すべきだろう。
OS用とする場合、現状400GB使っているようであれば、500GBモデルとはせず、1TBモデルにする。
500GBだと、400GBを移行した場合、80%埋まってしまうことになり、速度低下が発生してしまう。
空き容量を保つか、DRAMキャッシュ搭載品とするかだ。
DRAMキャッシュには、NANDメモリのどこにデータを記録したかがキャッシュされており、その容量は、SSDの記憶容量の千分の壱が目安(1TBのSSDであれば1GB)である。
SSDの容量が大きくなると、必要なDRAMキャッシュのサイズも増えることになるが、2TBでも1GBしか搭載していないモデルが多い。
なので、DRAMキャッシュ搭載の2TBモデルに多く書き込むと、DRAMキャッシュが不足し、速度が低下してしまう。
Windowsに「HMB」という設定があり、そこで値の確認と、より大きな値(1GBとか)の設定ができればいいのだが。
16GBのRAM搭載PCであれば、1GBくらいHMBに回しても問題ないと思うのだが、不意の電源断等の問題から、最大でも「64MB」という微小値にとどめており、単に増やせば良いというものではないンかはシラン(SILANE)。
関連:SDSSDXPM2-500G-J25(エキプロ)の入手,レビュー,ベンチマーク,温度,サンディスク
関連:[Colorful] SSD「SL500 640G」開封レビュー [容量単価激安]
関連:[SSD] Team(T253X1960G0C101)の速度計測(ベンチマーク)とレビュー [激安]