goods and life +

オーバープロビジョニングや、Over Provisioning 祭りや!(嘘)

なぜいまさら SATA SSD なのか?

…それは、SATA II ソケットしか空いていなかったから。

Marvelチップの載った、OS がブートしない仕様の SATA III (6Gb/s) ×4口の PCIeカードをストレージ用途のディスク接続に使い、PCIe NVMe ×1 + M.2 SATA SSD ×1 + mSATA ×1 という構成のトリプルマウント謎カード上の NVMe SSD に macOS Ventura起動ディスク、残る AHCI SATA III ×2 は RAID1 でひとつのアレイにして Carbon Copy Cloner のデータバックアップ用途に使っており、あとはビデオカードと USBカードは必須だし外せないので、もうこのサブサブ機の PCIe はひとつも空きスロットがないんですよね。

外からのぱっとみ、PCIeスロットが 5つもあるように見せかけて喜ばせておいて実は 4つしかないのが MacPro5,1

そんなわけで、MacPro5,1 (Early 2009) のデフォのしょぼ〜ん規格である SATA II (3Gb/s) の基板側ソケットか、もしくは SuperDrive のスレーブというかセカンダリというか Lower側のソケットを使うしかないんですね。

…とはいえですよ、MacPro5,1 (Early 2009) の 300 MB/s までの帯域幅のスループットのしょぼ〜ん SATA II (3Gb/s) が SATA II (3Gb/s) のまんまだったらもっさり感がありますよね。
かつての Apple RAID カードを搭載した状態の HDDアレイよりも、むしろ 100MB/s 近くは遅い感じでの動作になります。
なので、そこにつないだディスクは保管用途以外には極力使いたくはないですよね。

でも、Over Provisioning (予備領域) + DRAMキャッシュによって、SATA II (3Gb/s) がびっくりするほどいい感じにイキイキする、これほんと。

SATA II (3Gb/s) に接続した Windows OS が入った Samsung 860EVO(SATA SSD) がほんとにこうなるんですよ。
Over Provisioning だけでもいい感じになるところに DRAMキャッシュが効きます。


Samsung Magician ソフトウェア バージョン7.2.1
てことで、今回 Samsung のSSD を使ったので、Magician の最新版を使いました。
ただし、Windows で起動させている時だけのお話しなので、そこはちょっと残念ですけどね。

Samsung Magician は Windows 7、Windows 8、Windows 8.1、Windows 10 (32/64ビット)、Windows 11 (64ビット)をサポート。
Samsung SSD 470シリーズ、750シリーズ、830シリーズ、840シリーズ、850シリーズ、860シリーズ、870シリーズ、960シリーズ、970シリーズ、980・980PROシリーズ、990PROシリーズ、T5シリーズ、T7シリーズで動作します。
他には、データ移行なんかの機能もあります。(ただし、メーカー縛りはあります)

 icon-hdd-o オーバープロビジョニングとはなにか?

transcend
オーバープロビジョニング(Over-Provisioning)とは?

kingston
SSD オーバープロビジョニング (OP) を理解する

seagate:耐久性とオーバープロビジョニング


SSD 容量の一部をキャッシュとして割り当てることによってウェアレベリングやガベージコレクションがより効率的になり、データ転送速度の維持と SSD のデータ書き換え寿命の延伸に貢献します。
「ランダムアクセススピードの向上」と「SSDデータ書き換え寿命の延伸」の両立、いいじゃないですか?
メモリがたくさんあって、ディスクが小さすぎない、大容量ってわけでもない、バッテリー駆動なんかやってない、って条件ならその効果も多少みえやすいと思います。


なにをして、どうなったのかみていきましょう。
見てのとおり、Windows の入った 860EVO(SATA SSD) の接続先が SATA II (3Gb/s) の遅いインターフェイスなんです。
SSD は音もなく静かだし、読み書きも HDD よりは楽になるけど、これでは SSD のもともとの性能も頭打ちで出せない状態。

before
この状態での 860EVO のディスクの連続読み出しは 284 MB/s、連続書き込みが 272 MB/s、ランダム読み出しは 36132 IOPS、ランダム書き込みは 29052 IOPS でした。
SATA II なので、まあ順当な数字ですね。

after
で、連続読み出しは 2223 MB/s、連続書き込みが 2103 MB/s、ランダム読み出しは 59570 IOPS、ランダム書き込みは 31250 IOPS へと大幅に改善されました。
その理由は…

Performance Optimization で Full Performance Mode を選ぶ
Magician は Over Provisioning の項目だけではなく、その上側に Performance Optimization の項目があります。

Over Provisioning と、使用されていないブロックからデータを削除することでストレージデバイスのパフォーマンスを改善する TRIM有効化との組み合わせ、それに加え、DRAM をストレージのキャッシュに使うことで最適化させる RAPIDステータス、という 3つを組み合わせた Full Performance Mode がありますので、それをやってみました。
たったのそれだけなので、お手軽です。


Over Provisioning の項目で、SSD コントローラの使用に限定される容量の比率をどれくらいにするのかについては、どういう作業負荷なのかによっても変わってくるでしょうし、OWC などメーカやベンダー各社がやってるのはだいたいどこも元から 7%あたりっぽいけど、kingston のページの説明だとディスクの容量や何を重視するかによって実際にはもうちょっと込み入ってますよね。
なので、利用可能な最大の IOPSパフォーマンスを達成させるための、ターゲットIOPSパフォーマンスに基づいた最適なオーバープロビジョニング率は、こういったソフトウエアで任意で数字を入れてみて、これが正解だってのは、いろいろやってみないとなかなか言えないとは思います。

うちは 4GB (4.22GB) の Over Provisioning (未割り当て) にしておきました。
テレビでよくやるインチキグラフみたいな図で、パッと見で、使えない場所がこんなにも喰ってしまっているのかと印象悪い勘違いを誘発しそうだけど、実際には 500GB に対して 4GB ですからね。((物理容量 - ユーザーが利用可能な容量)/ユーザーが利用可能な容量)×100 = OP %

Over Provisioning のための未割り当て記憶域はホストの OS からは見えず、この領域は SSD コントローラの使用のみに限定される場所となります。
EFIパーティションの占める部分を除く C:Windows のパーティションが OP 設定パーティションとなります。


手間いらずで顕著な効果が出せるのにとても残念ですが、Magician は macOS と Linux の環境はサポートされていません、Windows 環境だけ。
で、いまのところこういう簡単なのは Samsung の SSD でしか出来ない芸当では?
Crucialの Storage Executive もあるけどひと手間かかりそう。
ここらのユーティリティが各社出揃うか、SSD のメーカーや OS を問わずこのような設定が行えるものがあればいいんですけどね〜。

実際の使い心地はどうなのか?
Magician の Full Performance Mode で DRAM ストレージキャッシュが効いてシーケンシャルもランダムもけっこう大きく数字がかわってきます。
単純にパフォーマンスアップと SSDデータ書き換え寿命の延伸にも貢献することになって一石二鳥なので、ディスクの容量を予め少し使うことになる以外は Over Provisioning に特にこれといったデメリットはないんじゃないでしょうか。

しいていえば、Magician のアップデートがあった時、ディスクを一旦 Full Performance Mode の設定からノーマルに戻しておき、Windows を再起動して Cドライブ に Over Provisioning のための未割り当て領域の確保を設定して、その後 Magician のソフトをアップデートして、そこでもう一度 Over Provisioning の量の設定と Full Performance Mode の選択をする必要があることくらい。(追記:最新の Magician アップデートはこの手間がなくなりましたので普通にアップデートするだけで既存の設定が反映されます)
Samsung の SATA SSD を購入することがあったら、ぜひ Magician で Full Performance Mode をやってみてください。

体感としての使用感も実際まあまあ良くなります、 Windows Defender でディスクをスキャンしたり、コマンドプロンプトで sfc /scannow なんかを実行する場合もけっこういい感じで詰まらずに進んでくれます。
もともとの条件が SATA II 規格で動かざるを得ない状態の SATA SSD なんだということを考えると、たったの 0円で破格の性能アップが果たせており、吊るしで使うよりも、かなりおトクな使用感を得ることが出来ます。

でも実は DRAM のキャッシュの割り当て分が切れるときにあっという間に化けの皮が剥がれてたちまちその分の減速をするので、ビデオ編集用途なんかに使うには不安定なので正直ちょっと無理。
ぶわ〜っと針が振って、おっ、と思ったら、しゅ〜っと下がってこうなる、みたいな感じ。
Blackmagic Disk Speed Test で動作中の針の動き方をみると、その瞬間のガッカリ感が味わえるかと。
もともとが SATA II 規格で動かざるを得ない状態の SATA SSD なので、長いビデオのような連続シーケンシャル読み取り/書き込み操作にはメリットがないだろうし。

…それでもまあ旧シルバーMac Pro の SATA としてはすごくいいと思います。
Windows 11 Pro が快適につかえます、macOS 同等以上に軽快。

さて、ここから下の黒いのは上記の Samsung 860EVO ではなくて、同じ MacPro5,1 (Early 2009) のデフォのしょぼ〜ん規格である SATA II (3Gb/s) の基板側ソケットにつながっている Samsung 840 Series です。

「同じマシンの SATA II のソケットにつながる同じような性能の SSD」という条件なのに、こういった処理の有り無しだけで、数字はこのくらい違ってしまいます、エグい。
(Samsung 840 Series は 860EVO が出る前に発売された SSD なので少し古いけど、速度の部分の性能としては 860EVO と大幅には変わらず、ほぼ似たりよったりのはずです)
それを macOS Ventura 環境の AmorphousDiskMark.app で計ってみたものだけど、もともとは SATA につながった SATA SSD なんてこんなもんで、まあ順当な値。
それでも、一般的な HDD から シリアルATAの SSD に載せ換えたらいきなりサクサク動いてちょっと感動的なのは、ランダムアクセスが良くなるからでしょうね。

じゃあもしこのディスクが SATA III (6Gb/s) 接続だったらどうなるかというと…
Marvel チップの載った OS がブートしない仕様の SATA III (6Gb/s) ×4口の PCIeカード経由でつなげば、SATA III (6Gb/s) として使えるので、それもついでにやってみます。
その結果どうなるかというと、シーケンシャルがよくなるのは確か。
SATA II (3Gb/s) と SATA III (6Gb/s) だと、リンク速度がちょうど倍になるんですけど、実際のリンク速度が倍だからディスクの速さが倍になるのかというとちょっと違います。

よく使われるところの 4Kランダムアクセスはほぼ同等か、なぜかそれ以下になる程度をさまようような、誤差みたいな範囲なんですよね。
4Kランダムアクセスがほぼ同等なら、人がなにかちょっとした作業をこなす程度の使い方だと、速さの違いなんて感じとることもないレベルだと思います。

でも、古めの SSD ではなくて、現行の Samsung 870 EVO なら性能も上がって、リンク速度が 3Gb/s の倍の 6Gb/s に変わった分額面通りきっちり倍に近いような結果になってくるんじゃないかなと思いますね、しらんけど。
実際、別の MacPro5,1 (Early 2009) の DVDドライブベイの場所の SATA II (3Gb/s) ソケットを利用した SanDisk の SSD (容量が違うのでキャッシュのサイズなども異なり単純に比べられないですが)も、SATA II の接続だけど、連続データコピーの時なんかだと、条件によっては読み込みは 500MB/s を越してきますからね。

NVMe SSD で Over Provisioning + DRAMキャッシュなら、メモリの速さにもよりますがだいぶスピードも変わってくるんじゃないでしょうか、いや、もう NVMe だと元から速いんでほぼかわらんか?、しらんけど。

シリアルATA SSD で Over Provisioning + DRAMキャッシュ をやるのなら、いまなら 560MB/秒の読み出し速度、530MB/秒の書き込み速度にアップした PlayStation 4 動作確認済みの Samsung 870 EVO がおすすめです。
PlayStation 5 に対応となると、5500MB/秒以上の PCIe Gen4 の NVMe が推奨スペックです。

840, 860 シリーズと比べて、値段はむしろ 870 のほうがうんと下がってますし、Samsung や Western Digital(SanDisk)、マイクロンなどのような、メモリやコントローラー、チップを含めてぜんぶ自前で用意できるメーカーのディスクだと品質的にもそんなにハズレはないでしょう。
Samsung Magician が使えるのは Samsung の SSD だけですけど、Western Digital の場合は WD Security、WD Utilities などをダウンロードできて、こちらは macOS でも使えるようになっています。

Magician のアップデートがあったのでやっておきました。
ついでに 4.5GB の Over Provisioning (未割り当て) にしておきました。

連続読み出しは 2223 MB/s から 2512 MB/s、連続書き込みが 2103 MB/s から 2276 MB/s へと改善、ランダム読み出しはなぜか 59570 IOPS から 58837 IOPS にダウン、ランダム書き込みは 31250 IOPS から 33447 IOPS へと改善されました。
まあ誤差みたいなもんですけど。

追記: Magicianソフトウェアがバージョン8.0.0になって、macOS用・Android用が追加されています。

待望の macOS用キタ
…といっても、なぜか macOS Sonoma 環境では エラーになってしまします。
macOS Monterey だと普通にインストールできましたね。
インストール後はシステム環境設定で実行許可をする必要があります。
しかしですね…

Over Provisioning
この機能はこのOSではサポートされていません。

Performance Optimization
この機能はこのOSではサポートされていません。

…macOS だと肝心の機能 Over Provisioning + Performance Optimization が使えないってこった、無慈悲すぎるやろこれ。
てことで、ほぼ意味がないですね。
まあ MacPro5,1 ならもうわざわざ SATA SSD なんて使わずに、できるだけ容量の大きな NVMe SSD を使えってことですね。

そんじゃあね〜…(´・ω・`)

お買いもの忘れはないですか?

*
*
* (公開されません)

CAPTCHA


※スパム対策のため、日本語を含まない投稿は無視されます。

Return Top