こんにちは、natsukiです。今回は、パソコンの性能を知る、基本的な話です。パソコンの性能を知るとき、通常は、まず、CPUの種類、RAM(メモリー)容量、ストレージ容量に注目しますね。ところが、製品のスペック情報に記載されていないけれど、重要な項目に、ストレージの「データ転送速度」があります。今回は、そのストレージのデータ転送速度と、それを測る定番ベンチマークソフト「CrystalDiskMark」について解説します。ウインタブをはじめ、様々なところで、パソコンやデータ保存用ストレージの性能を評価するのに使われているこのソフトですが、いったい何を、どのように計測しているのか? その結果から何が分かるのか? というところを説明していきたいと思います。
目次
1.「データ転送速度」とは何か?
データ転送速度とは?
まず、データ転送速度とは何で、どんな種類があるかということです。データ転送速度とはその名の通り、データをやりとりする速度です。CPUが高性能であれば処理能力は高くなりますが、いくら処理能力があっても、データのやりとりが遅くては、そっちが足を引っ張って実際の体感速度は遅くなります。一昔前は、大手メーカーのパソコンでも、高性能なCPUを積みながら、ストレージのデータ転送速度が遅いため、せっかくの能力を発揮しきれないことがよくありました。
たとえばこれ、約3年間ほど、家でのメインマシンとなっていた、究極のリビングPC「PIPO X10」です。これの前は、私は家では、CPUに第4世代Core i7を積んだNECのノートパソコンLavie Lを使っていました。超有名メーカーの超メジャーシリーズですね。しかも、買った当時はビジネスノートとしてはそこそこ上のランクのものです。一方、PIPO X10のCPUは、Atom x5-Z8300という、モバイルPC向けの、省電力ながら処理能力はごく控えめなものです。ちなみにRAMも、Lavie Lは8GBなのに対して、PIPO X10は4GBしかありません。当然、処理能力を測るベンチマークソフトで比較すると、Lavie Lの圧勝です。ところが、パソコンの起動やソフトの起動に関しては、PIPO X10の方が圧倒的に早く、そのため、オフィスソフトやインターネット利用、簡単な画像処理などのライトな使い方では、PIPO X10の方が快適に使えてしまうんです。これは一体どういうわけかというと、まさに、ストレージのデータ転送速度の差です。PIPO X10の方がストレージのデータ転送速度が速いため、処理能力では圧倒的に劣りながらも、体感では快適に使えるという逆転現象が起きてしまったわけです。
ストレージの種類で、おおまかなデータ転送速度の速さが分かる
このようなデータ転送速度の違いは、おおまかにはストレージの種類によって分かります。現在、パソコンの内部ストレージによく使われるのは、次の3種類です。
・HDD(ハードディスクドライブ)
・eMMC(組み込み用マルチメディアカード)
・SSD(ソリッドステートドライブ)
おおむね、下に行くほど、データ転送速度が速くなると思っておけばいいでしょう。もちろん、同じHDDやSSDでも、ものによってデータ転送速度はまちまちで、特にSSDは接続形式や種類が非常に多様で、それによってデータ転送速度も大きく異なりますが、そこに触れると非常に長くなるので、今回は詳しくは掘り下げません。最低限のことを言うと、「SATA接続」って書いてあれば、SSDの中でも比較的データ転送速度の遅い方です。それでも、HDDやeMMCよりは大幅に速いです。「NVMe接続」って書いてあれば、SSDの中でもデータ転送速度の速いほうです。つまり、
HDD < eMMC < SSD(SATA接続) < SSD(NVMe接続)
と、とりあえず思っておけばいいです。
2021年現在で、快適にパソコンを使いたいなら、ストレージがSSDであることは必須項目と言っていいでしょう。さすがに現在は、大手メーカーのパソコンでも、メインストレージにHDDを使っているものはまず見なくなりましたが、中古や型落ち品の安売りなんかだとまだ見かけるので注意です。eMMCは、比較的低スペックのパソコンに、まだ時々見られます。SSDより明確に速度は劣るものの、そもそもが低スペックなパソコンにしか積まれていないこと、最大容量も市場に出回っているのはせいぜい128GB止まりなことから、CPUがCeleronクラスであれば、SSDとの体感差はあまりなかったりします。これは例えば、CPUにCeleron N3450を積むYEPO 737A6で、メインストレージをeMMCからSSDに換装して検証した記事もありますので、興味のある方はご参照ください。
先ほどの例でいうと、Lavie Lは、ストレージにデータ転送速度の遅い「HDD(ハードディスクドライブ)」が使われていて、PIPO X10は、ストレージにそれよりもデータ転送速度の速い「eMMC(組み込み用マルチメディアカード)」が使われていました。これが、使用感の差となって現れたわけです。
データ転送速度には「シーケンシャルアクセス」と「ランダムアクセス」がある
先ほどから、データ転送速度を単純に「速い」「遅い」と言っていますが、実は、この「速度」には「シーケンシャルアクセス」の速度と、「ランダムアクセス」の速度の2種類があります。「シーケンシャルアクセス」とは、連続した領域へのデータの書き込みや読み出しのことで、イメージとしては、ある程度まとまったかたまりでのデータのやりとりを想像してもらえると、当たらずとも遠からずといったところでしょう。写真や動画、pdfなど、一般的に想像する「ファイル」のやりとりがこれです。一方の「ランダムアクセス」とは、せいぜい数キロバイト程度の、微細なデータを大量にやりとりすることです。これは、ユーザーが意図して行うものではなく、OSやソフトが稼働するときに行われているものです。
つまり、「シーケンシャルアクセス」の速度は、さまざまなファイルのコピーや書き込みなどの速度に影響するもの、「ランダムアクセス」の速度は、OSやソフトの稼働する速度に影響するもの、と理解しておけばいいでしょう。
2.CrystalDiskMarkで、具体的なデータ転送速度を測ろう
「CrystalDiskMark」とは?
では、そのデータ転送速度は、具体的にはどう測るのでしょうか。これは、けっこうめんどくさい話になりまして、例えば、さきほど「ある程度まとまったかたまり」とか「微細な」とか言いましたが、それって具体的にどのくらいを基準にするのかという問題があります。そこで、日本でデータ転送速度を測る事実上の基準となっているソフトが、「CrystalDiskMark」です。
「CrystalDiskMark」とは、hiyohiyo氏によるフリーのデータ転送速度測定用ベンチマークソフトウェアです。個人の善意によって開発・提供されているソフトでありながら、その使い勝手の良さ、ヴィジュアルの分かりやすさなどから、データ転送速度というパソコンの最も基本的な性能を測るにあたって、日本における実質的なデファクトスタンダードとなっているという、希有な存在です。ほんとうにありがたいことで、敬意と感謝をもって使いましょう。
入手
入手は、作者のホームページよりダウンロードしましょう。
通常バージョンと、公式キャラクター付きのShizukuバージョンがありますが、お好きな方で。また、インストーラー付きと、zip版もあります。これもお好みで。バージョンについて、記事執筆現在の最新安定版は、「8.0.0」となります。ただ、昨年の11月にまだ出たばかりで、ネット上に結果の蓄積がないため、以下の説明はバージョン7で進めていきます。
計測
計測前に、まず、計測結果にできるだけ影響を及ぼさないように、起動しているソフトなどを極力閉じておきます。Windowsアップデートと同時にやったりなんてもってのほかですよ(笑) 正確を期すなら、念のためタスクマネージャーを開いて、バリバリ動いているソフトがないかチェックしてからの方がいいですね。裏でアップデートが動いていたり、特にありがちなのは、オンラインストレージが同期を行っていたりというのもありますから。
ソフトを立ち上げたら、まずは計測対象となるストレージを選びます。本体のストレージ以外に、USBメモリやSDカードなど、パソコンに接続した外部ストレージを計測することもできます。
その他の部分は、とりあえずは、いずれもデフォルトでいいでしょう。表示について説明しておきますと、左上の「5」は、試行回数です。回数を増やしたほうが精度は高まりますが、時間がかかります。なお、最終的な結果は、試行結果の「最大値」となります。「平均」ではありません。「1GiB」は、試行する総データ量です。これも、多いほうが精度は上がりますが、時間がかかります。「GB」と「GiB」の違いですが、「GB」は、本来は2の30乗を示すものですが、慣用的に10の9乗を示す場合もあり、この辺はいい加減です。そこで、2の30乗であることを明示的に示す場合は「GiB」と表記します。「KB」と「KiB」、「MB」と「MiB」、「TB」と「TiB」なども同様です。右はじの「MB/s」は、バージョン7から追加された機能で、単位を選べます。後述のように、最近はmicroSDカードのデータ転送速度に「IOPS」という単位を使う場合があるので、IOPSを測りたいときは、単位を変えましょう。ちなみに、「MB/s」で計測しても、他の単位も計測されているので、計測後に単位を変えてもいいし、結果をテキスト出力すれば、すべての結果が表記されています。
「All」ボタンを押せば計測が始まります。そこそこ時間がかかるので、しばらく放置。同時に別の作業とかやると、結果に影響を及ぼす恐れがあるのでやめましょう。
結果の見方
計測結果が出ました。先述のように、この状態でも単位を切り替えることができます。とりあえず、デフォルトの「MB/s」での見方を説明していきましょう。「MB/s」とは、そのまま、1秒間に何MB転送できたかを表したものです。
縦の列を見てみましょう。データを記憶するストレージは、データを読み出すのと書き込むのとでは速度が異なります。左側の「Read」は読み出し速度、右側の「Write」は書き込み速度を表します。
横の行を見てみます。「SEQ」は「シーケンシャルアクセス」を示します。「RND」は「ランダムアクセス」を示します。
さらにその他の記号の意味も説明しておきます。ただし、ここは厳密な解説をすると大変なことになるので、ざっとの説明にとどめます。あんまり理解してなくても、おおまかな評価はできるので、よく分からなければ読み飛ばしてください。
まず、横の「1M」「4K」は、試行した個別のデータサイズを示しています。CrystalDiskMarkでは、これを「ブロックサイズ」と呼んでいます。先に「シーケンシャルライト」は「ある程度まとまったかたまり」と言いましたが、その具体的な指定ですね。ここでは「1MiB」で試行しています。同様に、「ランダムアクセス」の「微細な」とは、ここでは「4KiB」で試行しています。
また、それぞれに「Q」「T」という表記があります。ここもまじめにやると込み入った話になるんで、大雑把に説明しておきます。興味のある人は詳しく調べてみてください。「Q」とは「キュー」の略で、1回で出す命令の数です。「Q1」だったら、1つの命令が終わったら次の命令を出すという風に、順番に処理する、「Q32」だったら、32個の命令を一気に出して、あとはパソコンの方でやりやすい順番で処理する、ということになります。「T」とは「スレッド」の略で、同時に処理する数です。「T1」だったら、同時に1つ以上の処理を行ってはいけない、「T16」だったら、同時に最大16の処理を並行して行ってもよいということになります。ちなみに、タスクマネージャーに表示されるスレッド数とは別です。
以上の数値は「設定」メニューから変更することもできます。ただ、ここをいじってしまうと、テスト条件が変わってしまうので、他の結果との比較ができなくなります。旧バージョンを再現するなど(後述)、明確な意図がある場合以外は、変更する必要はないでしょう。
とりあえず、最上段と最下段の結果を見よう
さて、バージョン7の場合は、シーケンシャルアクセスとランダムアクセスが、「Q」「T」の違いで2種類ずつあります。いったい、どっちを見ればいいんだよ!?ってことですね。また、後述のように、バージョンによっても試行条件が変わっています。その場合は、どの結果を比べればいいのか?
大雑把な結論を言うと、ランダムアクセスについては、最下段の「Q1T1」を見るとよいでしょう。これは、どのバージョンにもあるはずです。なぜなら、パソコンからすれば、まとめての命令が来たり(「Q」が2以上)、並行処理を許可される(「T」が2以上)方が、より効率のよい処理を行うことができます。つまり、「Q1T1」というのは、最も効率の悪い、処理能力の助けを得ない、純粋な(と表現していいかは微妙ですが)ストレージのデータ転送速度となるわけです。また、実際の使用の際も、特にランダムアクセスについての処理は「Q1T1」で行われていることが多く(これはもちろん、処理内容にもよる)、「Q1T1」でのベンチマーク結果が体感とも合うというのはよく言われることです。ともかくも「最低値」であり、そこで比較しておくのが無難でしょう。
シーケンシャルアクセスについては、意見の分かれるところです。後で比較しますが、バージョンによっても、測定条件が大きく違って統一されていないんですよね。「Q1T1」の場合に「最低値」となる、ということはランダムアクセスと同じなんですが、「Q1T1」のないバージョンもあります。どうやら、最上段の設定が、その時代に主流のストレージで「T1」で大きな数値の出やすい設定、となっているようです。なので、「そのストレージの最大性能の目安」としてある程度の汎用性があるのが、最上段のシーケンシャルアクセスとなります。
ということで、私見では、ランダムアクセスは最下段、シーケンシャルアクセスはデータ転送速度の最大値の目安として最上段を見ておけば、他のストレージとの比較がしやすいのかなと考えています。シーケンシャルアクセスについては、異論はあると思います。
最近話題に上がるようになった「IOPS」も計測できる
先述のように、デフォルトの画面では表示されない単位の数値がいくつかあります。このうち、最近、ときどき話題に上がるのが「IOPS」という値です。これは「Input Output Per Second」の略で、そのまんま、1秒間に何回データのやりとりができるかという値で、ランダムアクセスの評価を行うものです。
何に使われるかというと、SDカード(実質microSDカード)の能力評価です。本来、microSDカードのような外付けストレージは、本質的にランダムアクセスが苦手で、そこに期待されることはあまりありませんでした。しかし、最近になって、スマホのシステムストレージの一部としてmicroSDカードを使う場合が出てきました。そこで、少しでもランダムアクセスの速いmicroSDカードの開発が進み、それを評価する基準として「A(アプリケーションパフォーマンスクラス)」という規格が策定され、その基準として使われるのがこの「IOPS」というわけです。この辺の話は、前に記事にしてあるので、興味のある方はご覧ください。
「IOPS」の値を知りたい場合は、右上の単位を変更してもいいですし、あるいは、左上の「ファイル」メニューから、すべての単位の計測結果をテキストで出力することができます。「コピー」を選べば、クリップボードにコピーされます。「保存」を選べば、テキストファイルで保存されます。
3.実際に結果を比べてみます
ではでは、実際に「HDD」「eMMC」「SSD(SATA)」「SSD(NVMe)」を計測して結果を比べてみましょう。
まずは、「HDD」。これは、外付けHDDの「ADATA HV620S(2TBバージョン)」を、USB 3.0ポートにつないで計測したものです。もちろん、接続方法の問題で、外付けストレージよりも内部ストレージのHDDの方がよい結果が出る傾向はありますが、まあ、HDDだと似たようなもんです。
ご覧のように、シーケンシャルアクセスに対して、ランダムアクセスが著しく劣ることが分かります。このように、HDDは、まとまったデータのやりとりならそこそこのデータ転送速度がありますが、微細なデータのやりとりは致命的に苦手です。つまり、OSやソフトの起動などにはもたつきがちです。
今度は、「eMMC」です。これは、ミニPC「MINIX NEO Z83-4」搭載のeMMCです。シーケンシャルアクセスは、HDDと大きな差はありません。一方で、ランダムアクセスでは大幅に上まわります。これが、はじめに紹介した、高性能なCPUを積むけどストレージがHDDのNEC Lavie Lと、CPUは低性能ながらストレージがeMMCのPIPO X10との、使用感の差となって現れたわけです。
今度は、SSD(SATA接続)です。先ほどから例示で出しているデータですが、これはタブレットPC「Teclast X6 Pro」の内蔵SSDのものです。シーケンシャルアクセス、ランダムアクセスともに、HDDはもちろん、eMMCも圧倒しているのが分かると思います。大体このくらいあれば、OSやソフトの起動(よっぽど重たいゲームや専門的なものを除く)、ブラウジング、簡単な画像編集などを行う分には、十分にストレスの無い動作が見込めます。
こちらは、同じSSDでもNVMe接続の「Lenovo Legion 750i」のものです。ゆないとさんの記事よりお借りいたしました。はい、圧倒的。文字通り桁が違う。ここまでくれば、通常のOSやブラウジングだけでなく、重量級のゲームや専門的なグラフィックソフトなども快適に扱えることでしょう。
と、実際に計測してみると、これだけ数値が違うということが分かるわけです。
参考までに、これは、現行ほぼ最高峰のUSBメモリ「Sandisk Extreme Pro」シリーズのベンチマーク結果です。
こちらは、1世代前の最高峰microSDカード、やはり「Sandisk Extreme Pro」シリーズのベンチマーク結果です。
USBメモリやSDカードで、これ以上の数値はそうそう出ないでしょう(SDカードは大容量ほどデータ転送速度が速い傾向があるので、同じ64GBの場合)。共通して言えることは、シーケンシャルアクセスはそれなりに優秀で、特にUSBメモリのExtreme ProはSATA接続のSSDに匹敵する数値をたたき出します。一方、ランダムアクセスは苦手で、HDDよりはましなものの、eMMCにも届きません。これらのUSBメモリとmicroSDカードは、現行のほぼ上限に近い性能を持つ製品なので、他のたいがいの製品は、もっと低い値になります。つまり、USBメモリやSDカードは、基本的に画像や動画などの「まとまったデータ」を保存するのに向いていて、ソフトやOSを保存するような用途は向かないということです。USBから起動するOSなんてのもありますが、こういったことから、OSを入れる外部ストレージは、遅いながらもできるだけランダムアクセスの速いものを選択することが重要です。できれば、外付けSSDがベストですね。
4.「CrystalDiskMark」を使う上での注意事項
結果のバラツキは大きいので、あくまで目安に
やってみると分かりますが、結果はそれなりにバラつきます。実際には、ベンチマークを取っている間にも、裏でいろんなものが動いていますから、その影響もあるでしょう。また、先述のようにCrystalDiskMarkは、試行した中の「最大値」を表示するようになっています。繰り返しやっていれば、あるいは試行回数を増やせば、たまたまもっといい値が出ることもあります。あるいは、おそらくバックグラウンドの何かとぶつかったのか、異様に低い数値が出るときもあります。つまり、1回1回の細かい数値にこだわる意味はありません。使用にあたっては、あくまで「目安」と考えましょう。
バージョンが違うと評価基準が異なるので、単純比較ができないが……
CrystalDiskMarkは、すでにバージョン8までを数え、繰り返しアップデートされてきた歴史の長いソフトです。その間に、ストレージはHDDがほとんどだった時代から、SSDの普及、さらに高性能なNVMe接続のSSDの登場へと、大きく変化してきました。こういった変化に合わせて、ベンチマークの取り方も、その時代で主流のストレージを評価しやすいように、測定条件がかなり大きく変わっています。特に、バージョン3までとバージョン4以降は、測定方法に根本的な変更があり、互換性がないことが明言されています。
これは、バージョン5からバージョン8まで、4つのバージョンでTeclast X6 ProのSSDを計測したものです。ずいぶん条件が変わっているのが一目瞭然かと思います。条件が共通しているのは、ランダムアクセスの「Q1T1」で、これはいずれのバージョンでも最下段にあります。内部処理の違いなどもあるかもしれませんが、ここの数値には一定の互換性があると考えていいでしょう。ランダムアクセスの目安を知りたければ、「Q1T1」を見ろ、というのは先述の通り。
一方で、シーケンシャルアクセスは、「Q1T1」がバージョン6には存在しません。また、バージョン5とバージョン6では、シーケンシャルアクセスを、具体的にどの程度のサイズのデータのかたまり(ブロックサイズ)で評価しているかの明示がありません。実は、内部的にはブロックサイズ128KiBで評価しています。バージョン7以降は、これが1MiBになります。つまり、厳密な意味では、バージョン6以前とバージョン7以降のシーケンシャルアクセスのベンチマーク結果には互換性がありません。ただ、数値を見てください。どのバージョンでも、「Q」の数値が違っても、さほど大きな違いはありませんね。どのみち、数値にバラツキも出るものなので、目安としては十分に機能しています。なので、「シーケンシャルアクセス」ならいいじゃんか、細かい条件は気にするな、で、おおむねはよし、です。
ただし、です。これは、再度「Lenovo Legion 750i」のベンチマーク結果です。シーケンシャルアクセスが「Q8T1」と「Q1T1」では、大きく違うのが分かりますでしょうか。この「Lenovo Legion 750i」は、ストレージに最新の形式であるNVMe接続のSSDを採用しています。これまであげてきた他のベンチマーク結果と比べてみて欲しいのですが、HDD、eMMC、SATA接続のSSD、USBメモリ、microSDカードの場合は、「シーケンシャルアクセス」であれば、測定条件が違っても、結果にそれほど大きな差は出ていません。しかし、NVMe接続のSSDの場合は、これだけ大きな差が出てしまいます。実は、SATA接続のSSDでも、比較的高性能なものは、NVMe接続のSSDと同様に、「Q」の値を変えるとかなり結果が変化するものもあるようです。つまり、一定レベル以上のSSDになってくると、シーケンシャルアクセスに関しては、バージョン6以前とバージョン7以降の互換性は薄いとみていいかもしれません。
なお、バージョン7からは、「設定>キュー数&スレッド数」で、細かい設定ができるようになったので(バージョン6ではブロックサイズの指定ができなかった)、その気になれば旧バージョンの条件を再現することは可能です。
CrystalDiskMarkを使うと、ストレージが劣化する?
あらゆるストレージ、特にHDD以外のストレージは、情報を読み書きするたびに劣化します。もちろん、最近の技術の進展により、その劣化は、常識的な使い方をしている限りにおいては問題がないレベルです。一方で、CrystalDiskMarkをはじめとするベンチマークソフトは、通常はあまりないような大量の読み書きをさせることでその実力を測っているので、理論上は、ストレージの劣化を早めます。
とはいえ、これはあくまで理論上の話で、数回程度の使用でどうこうなる話ではないので、基本的には気にする必要はないでしょう。
5.まとめ
と、いうことで、「データ転送速度」、特にランダムアクセスは、実際の使用感に大きな影響を与える数値です。しかし、このデータ転送速度について、製品のスペックシートに具体的な数値が書いてあることはあまりありません。最新のSSDを積んだよっぽどハイスペックなパソコンで、書いてあるくらいですかね。それも、シーケンシャルアクセスの方で、ランダムアクセスについて具体的な言及をしている例はまずないはずです。これは、様々な条件や、そのときの具合によって大きく変わってしまうものなので、当然といえば当然です。ただ、買う身からしてみれば、その製品の性能の大体の目安は知りたいところですよね。
そこで、この「CrystalDiskMark」の出番となるわけです。はじめに書いたように、「CrystalDiskMark」は、あくまで個人の開発したツールです。が、それだけに多くの人が気軽に使って、結果を公表しあっています。気になる製品は、ネット上で検索すると、CrystalDiskMarkを使ったの多くのベンチマーク結果に行き当たるでしょう。ウインタブでも、実機レビューの際に、CrystalDiskMarkを利用することは多いですね。これらの数値を参考にするとよいと思います。または、すでに買った製品について、CrystalDiskMarkを使うことで、ある程度客観的な性能評価もできるでしょう。
手軽に使えるソフトなので、もしまだ使ったことのない人がいれば、早速ダウンロードしてみましょう。とりあえず、手持ちのパソコンやUSBメモリなどをかたっぱしから測ってみるだけでも楽しいですよ。