NVMe、AHCI、M.2など良く分からない人へ向けたSSDの選び方

SSDはSolid State Driveの略で、HDD(Hard Disk Drive、ハードディスクドライブ)と比べて物理的な動作を必要とせず、高速なデータ転送を行えるストレージである。HDDと比べて高価であるものの、高速で寿命が長く、軽量で故障に強いといった特徴を持っている。

ところが一言でSSDといってもその種類は多く、インターネットで調べても専門的な記事が多すぎて結局何を買えばよいのかの判断がつかない場合も多いと思われる。

そこでこの記事では分かりにくい専門用語を整理しつつ、SSDの種類と用途、すなわち何がしたい時にどのSSDが適しているかを述べていきたいと思う。

NVMe M.2 SSDとは何か?

宣伝文句として"NVMe M.2接続なので従来のものと比べて高速に動作します"などと謳われているが、NVMeやM.2とは何を意味するのだろうか?

M2はフォームファクタで、NVMeはPCI Expressを通じて不揮発性ストレージメディアを接続する規格であるが、よく分からないと思うので、従来はどうであり、何が異なるのかなどを踏まえつつ整理していきたい。

HDDはSATA接続しAHCIで制御

HDD(ハードディスク)は一般的にSATA(セイタ、Serial ATA(エーティーエー))を通じてデータの読み書き命令が送られる。SATAはUSBなどと並ぶ接続規格の一つで、理論値として6Gbit/sのデータ転送速度を実現する事ができる。

6Gbit/sは750MB(メガバイト)/sであるから3GBのファイルを4秒で転送する能力を持つ。

ハードディスクで大きなファイルのコピーをした人は実感があるかもしれないが、3GBのファイルをコピーするには30秒程度は掛かっているように思われる。

ハードディスクにSATA接続する場合には、SATAの伝送帯域を十分使い切っておらず、ハードディスクそのものの遅さがファイルコピーの遅さにつながっている。別の言い方をすると、ハードディスクがボトルネックとなって転送時間が伸びている。

ところでソフトウェアは読み書きの命令を送ることでハードディスクに変更を加えている。ここに命令の取り決めが必要で、取り決めが無ければ、ソフトウェアがハードディスクに画像情報を書き込みたいとして命令を出したとしても、ハードディスク側はその命令をうまく処理できずデータを保存する事はできない。

よって命令の取り決めが必要となるのだが、この読み書き方法の命令・規則集にあたるものがAHCI(Advanced Host Controller Interface)である。

ソフトウェアが接続線を通じてストレージと対話(やりとり)をするための論理的な取り決めであるためAHCIは論理インターフェースの一種ということもできる。

AHCIはSATA接続を通して命令の伝達が最適に行えるように設計されている。

SSDでSATA接続しAHCIで制御を行う時の限界

HDDからSSDに変わったとしても、SATA接続をしてAHCI制御で読み書きをすることが可能である。ただし、ここで問題となってくるのがSATAの転送速度である。

SSDが登場した初期のころは問題とはならなかったが、高性能化が進むにつれ、6Gbit/sの伝送帯域では不十分となってしまった。言い換えると、ハードディスクの時には問題とはならなかったSATAの伝送帯域が今度はボトルネックとなり、全体のデータ転送速度が遅くなるという事態が起きてしまったのである。

パイプに水を流そうとするが、パイプの太さが問題となり水がより多く流れないというような問題である。

SSDでPCI Express接続しNVMeで制御を行うことで高速化を実現

そこでSATAよりも高速な転送速度を実現できるPCI Expressを用いてSSDと接続すれば良いということになった。ただし、SATA接続に最適化されたAHCIを用いるのではPCI Express接続でSSDの力を十分に引き出せなかったため、NVMeという新たな論理インターフェースが開発された。

NVMeはNon Volatile Memory Expressの略で、そのまま訳すとソフトウェアが不揮発性メモリと通信する規格といった意味になる。

Non Volatile Memoryとは不揮発(ふきはつ)性メモリの事である。液体が蒸発して気体となる性質を揮発性と呼ぶため、不揮発は蒸発しない性質のこと。この意味が転じて、電源が切れてもデータが消失しないことも不揮発である言う。SSDはパソコンの電源を落としてもデータを失わないため不揮発性メモリの一種である。

Expressは高速な通信といった意味で使われる。電車で〇〇Expressというと大抵は急行を意味するが、そのあたりを想像してもらえば良いだろう。

要するに、NVMeは不揮発性メモリであるSSDと高速に通信するための規格ということである。

PCI Express接続にはデータの通る道に該当するレーンが16本存在し、いくつのレーンを使うかで最大の転送速度が異なってくる。SSDの主流となっているのがレーンを4つ使ったPCI Express 3.0 x4である。3.0はPCI Expressのバージョンで、1レーン当たり8Gbit/s、すなわち1GB/sを実現できる。4レーンあるため32Gbit/s、すなわち4GB/sが理論的な最大転送速度である。

SATA接続の6Gbit/sと比べると5倍以上最大転送速度が増加していることがわかる。

M.2は接続端子や形状を表し、通信方式については関与しない

次にM.2(エムドットツー)とは何であろうか?NVMe M.2 SSDと書かれた製品が売られているためNVMeと何か関連しているのだろうか?などと思うかもしれないが、全く関係はしていない。M.2はフォームファクタ、すなわち接続端子と形状を定めた規格である。

M.2はType2280という形が主流で、これは横22mm(2.2cm)、縦80mm(8cm)という意味である。M.2 SSDは長方形の細長い板の形をしている。他にType2230、2242、2260、22110というタイプが存在するが、ほとんど販売はされていない。

M.2はフォームファクタであるために、ソフトウェアとSSDとの通信手段には関与しない。すなわち、PCI Express接続でNVMe論理インターフェースを用いるか、SATA接続でAHCIを用いるかは定めておらず、実際両方の製品が販売されている。よってM.2だから高速というの厳密ではない。

M.2以外のフォームファクタとしては下図のような2.5インチの長方形のものがある。こちらは基本的にSATAでの接続を前提としている。

NVMe M.2 SSDとは

最初の問に戻ると、NVMe M.2 SSDとはPCI Express接続に最適化されたNVMe論理インターフェースを用いて通信を行い、物理的な形はM.2規格に基づいて作られているSSDということができる。

最後に特徴を表にしてまとめると下のようになる。

SSDの種類のまとめ

NVMeはAHCIと比べてファイルコピーは速いがアプリの起動はそれほど速くならない

PCI Express接続のNVMeはSATA接続のAHCIよりも高速だが、その差はどこにあるのか?この問いに答える前に、まずシーケンシャルアクセスランダムアクセスを理解する必要がある。

SSDに読み書きを行う時に、物理的に連続した領域に書き込むか、断片化された領域に書き込むかで違いがある。想像するとなんとなく分かるかもしれないが、連続した領域に書き込む方が高速となる。

また、読み込みを行う時も、様々な場所から複数のファイルを読み込むのと、一つの大きなファイルを読み込むのでは総合のサイズが同じであったとしても、連続した一つの大きなファイルを読み込む方が高速となる。

この、読み書きのために連続した領域に対してアクセスを行うことをシーケンシャルアクセスとよび、断片化したいくつもの領域にアクセスを行うことをランダムアクセスとよぶ。

複数のファイルを一気に読み込むケースというのはアプリケーションやOS(オペレーティングシステム)を読み込む時であり、また大きなファイルを一気に読み込むケースは写真や動画などをコピーする時である。写真はアプリケーションが読み込むようなファイルと比べると十分大きなファイルである。

すなわちアプリケーションやOSの読み込みではランダムアクセスが多く発生し、ファイルのコピーではシーケンシャルアクセスが多く発生する。

NVMeはシーケンシャルアクセスは得意であるが、相対的にランダムアクセスは得意としていない。細かくは複数のアクセスがSSDに対して同時にあるケースではランダムアクセスであっても効果を発揮する。しかしこれは企業のデータサーバー用途であり、一般家庭で使われるPC向けでは効果は薄い。

SSDの速度の実際

次のYoutube動画によると各操作におけるHDD/AHCI SSD/NVMe SSDの速度は下のようになっている。

NVMeのSSDはAHCIのSSDと比べて、アプリケーションの起動はそれほど高速化されておらず、OSの起動時には初期化に時間が掛かかるのか、かえって遅くなっている。

ただし、ファイルのコピー処理は明らかに高速化されている。動画中では明らかにされていないが、写真や動画ファイルをコピーしているのだと思われる。

OSの起動 ゲームの起動 Chrome(ブラウザ)
を起動してタブを5つ開く
37GBのファイルコピー
HardDisk 61秒 45秒 39秒 498秒
AHCI SSD 36秒 30秒 5秒 126秒
NVMe SSD 37秒 29秒 3秒 38秒

NVMeかAHCIどちらを選ぶべきか

以上により情報が整理されたが、最後に主観的な意見を述べたいと思う。

まず同価格であれば、文句なしでNVMeのSSDを購入するが、下手をすれば同じ容量で2倍近くNVMeのSSDの方が高価である。

HDDからAHCIのSSDに変えることと比べると、AHCIのSSDからNVMeのSSDに変えることは、ファイルのコピー速度以外それほどメリットが無いため、価格差ほどの恩恵が得られるかは分からない。

ファイルのコピーは例えば動画編集ソフトに動画をインポートするときなどにも効果を発揮するはずなので、動画編集を良くする人で、かつ今までの動画編集が遅くていらいらしている人にとっては良い選択肢となるだろう。

結論としては一先ず AHCIの2.5インチSSDがコストパフォーマンスとして優れているためおすすめするが、ファイルのコピーを高速で行いたい、あるいは動画編集をより快適に行いたいなど明確な目的がある人か、値段に関わらずスピードを追求したい人はNVMeのSSDを購入すると良いだろう。

また、フォームファクタについては触れていなかったが、モバイルノートでは軽量化が重視されるため、軽量なM.2のSSDを搭載するのはありである。

トップページヘ行きパソコン購入の推薦を受ける