無料でNVMe的なストレージを構築する

8年間利用していたPCを新調した。
Intel製CPUとおさらばし、AMD製のCPUに乗り換えた。

PCの構成は下記の通り。
SSD化もあり、旧PCで不満に思っていた点も解消！…したはずだった。

| パーツ |       旧PC |    新PC    |備考|
|:-----------------:|:------------------:|:------------------:|:------------------:|
| 構成             |              BTO |       自作        | 初めて自作
| OS             |              Win10 Pro |       Win10 Pro        |OSは流用
| CPU             |        i7-3770 |       Ryzen7 2700X        |ベンチマーク2倍にUP
| メモリ             |        DDR3 16GB |       DDR4 32GB        |仮想環境を利用するため、増強
| HDD           |            3TB×2 + 500GB×1 |       3TB×1       |3TB×1を流用、他は売却
| SSD             |              なし |        240GB×1        |システムディスク用に新調
| マザーボード             |     ASRock H61M/U3S3          |  ASUS PRIME B450M-A |　マザボがオシャレでびっくり


# HDDの速度が遅い…
SSD化のおかげで処理速度がかなり上がった。
しかし、データ蓄積用に用意したHDDとの体感速度差がすごい。
ちょっと容量の大きいデータを移動すると結構待たされる。
うーん。これはボトルネックだなー。
そこで、HDDを高速化する方法はないものか？とグーグル先生に質問しまくった。

# HDDを高速化する技術2点
ありました。

 1. Intel Optane メモリ
 2. AMD StoreMI

インテルのオプテインメモリと、エーエムディーのストアーエムアイ。
詳細はリンク先に任せるとして、おおざっぱに内容を比較した表がこちら。

| 項目 |      Optane |    StoreMI    |
|:-----------------:|:------------------:|:------------------:|
| システム領域高速化             |     〇 |   〇        |
| 非システム領域高速化             |    〇 |   〇        |
| HDD最大容量             |     不明<br> |   10TB        |
|ソフトウェアの費用        |無料|無料|
|導入のしやすさ        |×<br>（複雑）|〇<br>（シンプル）|
|導入に必要なもの        |専用のSSD<br>（Optaneメモリ）|普通のSSD|



StoreMI、導入の敷居がめちゃ低い。
Optaneメモリは調べたら32GBで8000円とかするし。
StoreMIなら既存のSSD使いまわせるじゃん。

ということで実施したところ、
NVMe並みの読取速度をもつ大容量ストレージが（無料で）完成した。

# 手順
1. StoreMIを入手
2. 高速化するストレージを用意（SSD or HDD）
3. StoreMIに従って設定
4. 速度チェック


## 1. StoreMIを入手しインストール
AMDのHP[（こちら）](https://www.amd.com/ja/technologies/store-mi)からダウンロードしてインストール。※省略

## 2. 高速化するストレージを用意
対応するパターンは以下。
※HDDは10TB以下を用意
※SSD領域は256GBまでしか利用されない（残領域は別ドライブ扱いになる）

- システム領域を高速化する場合
    1.OSをHDDにインストール済　→　空のSSDを用意
    2.OSをSSDにインストール済　→　空のHDDを用意

- データ保存領域を高速化する場合
    1.HDDを利用中　→　空のSSDを用意
    2.SSDを利用中　→　空のHDDを用意

## 3. StoreMIを起動し高速化設定を行う

####1)起動画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/84c0edb5-6023-509e-a3f2-f8870055ca8d.png)

####2)Create Tier And Enable RAM Cache を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/3c13e347-72f3-bcc4-333a-de5f08aae235.png)

####3)ブートドライブを高速化するか選択
・今回はOS領域を高速化したいため、Yesを選択
※データ保存領域を高速化したい場合はNoを選択する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/1bdb8e11-376c-ff49-d75d-3c51a24a1545.png)

####4)ブート領域（Fast）と高速化対象（Slow）を選択
・SSDはFastにチェック、HDDはSlowにチェックし、NEXTを押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/65b605f7-1fe9-f917-6b1a-39cde7edefbc.png)

####5)バックアップとってね警告
・OSはWindowsUpdateで最新版にしておくこと
・必要に応じてバックアップをとってから、I Understarnd を押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/91cc8843-b520-3f78-46fd-9c9ef5ae482d.png)

なお、対象のディスクにデータがあると下記の警告が出る
下記の場合、ドライブ1のHDDに94GBのデータがある。
フォーマットやパーティション削除で空にすればこの先のステップに進める。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/dd7a4bc7-3e54-257b-c0aa-bfc0792dc9f0.png)


####6)メモリキャッシュを指定
・高速化に利用するメモリ量を指定（2G or なし）
・高速化の恩恵を最大限に受けるためには、2Gを選択するとよい
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/fab54a08-1da6-57d1-77c8-1b8a8ac5b5aa.png)

####7)最終確認
対象のディスクが選択されているか、メモリキャッシュの利用量に間違いがないか確認しNext押下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/9279628d-8bb4-fd13-cc23-060cb7d760e3.png)
押下すると、実行が始まる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/9c37b5bd-d748-4153-cfe6-0f02b3c39370.png)
僕のケースでは10秒くらいで完了。
下記画面が出た後、OKボタン押下してしばらく待つと再起動される
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/1dd09c5a-5dd0-4ca9-3071-6447e8437cf9.png)

####8)ディスク容量確認
再起動後、ディスク容量が2.94TBに増加しCドライブのみ認識。
このCドライブは、仮想ドライブStoreMIとして認識されている。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/f4f5ec89-d68f-57bc-f44d-7dd4a637dfcf.png)

##4. 速度チェック
さて、StoreMI導入前後の速度比較がこちら。
シーケンシャルReadの速度が9倍近くに向上、他のReadも最低2倍近く向上している。
Writeはあまり効果はないが、それでもシーケンシャルWriteが1.5倍に向上。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389667/1a7c3e54-a623-5bb6-d890-96d175e960fb.png)

##5. 注意事項
HDD高速化が可能なStoreMIですが、注意事項がいくつかあります。
それでも魅力的なPC環境向上策かと思いますので、どうでしょうか。

- 仕組み上、繰り返し呼び出す処理の高速化に強い（初回はあまり早くない）
    - 同じアプリを呼び出す
    - プログラムで同じテキストファイルの読み書きを行う
- ドライブ外すときは、StoreMIを解除してから
- StoreMIを解除すると、HDD側にデータが移る
- 解除時に、HDD側の領域が足りないと解除不可
- 耐障害性はない
    - 一度OSが完全に起動しなくなったので、HDDからデータだけでも救おうと試みましたが<br>無駄な徒労に終わりました。重要なデータは定期バックアップが重要です…



# 参考
【SToreMI関係】
・AMD公式：[AMD StoreMIテクノロジー](https://www.amd.com/ja/technologies/store-mi)
・[AMDのストレージ高速化技術 StoreMIを試してみた](https://www.pc-koubou.jp/magazine/10505)
・[これは速い！無料で使える「AMD StoreMI」でストレージを高速化してみた](https://phantomcryptomining.com/pc-diy/storemi/)



【Optane関係】
・Intel公式：[インテル Optane メモリー](https://www.intel.co.jp/content/www/jp/ja/architecture-and-technology/optane-memory.html)
・[HDDを爆速化「Intel Optane Memory」の使い方と性能を解説](https://chimolog.co/bto-ssd-optane-memory/)