USB3.0は本当に「速い」のか?、USB2.0と比較してみた2016/02/10HimaJyunみなさま、おはようございます、こんにちは、こんばんは。はじめましての方ははじめまして、HimaJyunです。最近、はじめてUSB3.0と言う物を利用した(今までは対応のデバイスを持っていなかった)ので今回は、USB2.0とどう違うかを含めて、本当に速いのかどうかを解説しようと思います。結果USBとは?まず最初に、USBとは何かを軽くご紹介致します。Bus(ユニバーサル・シリアル・バス)の略です。これ、テストに出ますから覚えておいて下さいね。バスって何?bus(バス->ブスでは無いので注意)とは、お風呂?、いえいえ違います。お風呂のバスは「bath」です。このバスは、コンピュータ内外の異なる機器にデータを転送したりするために共通化された経路の事です。共通化されているため、(規格さえ合っていれば)異なる機器でもデータを転送する事が可能です。普段良く使う物であれば、今回説明するUSBや、HDDの接続に利用するSATA、あまり意識しない物であれば、CPUやメモリを接続しているのも広義にはバスです。その中でも、USBは「シリアルバス」の名が指す通り、シリアルバスと言う種類です。反対に「パラレルバス」と言うのもあるので、軽く説明しておきます。Expressなどの現在一般的に利用されている方法です。シリアル(Serial::直列、連続などの意味)の言葉が指す通り、1ビットずつ順番に転送します。(ちなみに、8ビットが1バイト)パラレルバスは、IDE(パラレルATA)やSCSI、PCI(Expressではない方)で利用されていた、少し古い方法です。パラレル(Parallel::平行などの意味)の言葉が指す通り、複数のビットをまとめて複数の線で転送します。あるのが、「SATAとIDE、なんでIDEの方が線が多いのに遅いの?」です。確かに、理論的には同時に複数のデータを送った方が速いです。コンピュータの世界には「同期」と言う物があります。プログラマの方であれば非同期処理とかスレッドで苦しめられたはずです。コンピュータの世界において、2進数で「1,0,1,1,0(=10進数だと22)」で送信されたデータは必ず「1,0,1,1,0」で受け取る必要があります。これがもし「0,1,0,1,1」で受け取ってしまうと、十進数だと11になり、値が変わってしまいます。入金した1万円が、出金する時に5000円になっていては困りますよね。パラレルATAではそれらのデータの「同期」を取ります。速い話が、正しい順番に並び替えるのです。同期を取るためにはクロック信号と言うのをやり取りする専用線が必要になる上に、複数のビットを同時に転送するため、線が多くなりがちです。PC自作の経験がある方でしたら分かると思いますが、IDEケーブルは硬くてデカくて取り回しが悪かったですよね。回路が複雑になったり、まだ届いていないデータを待ったりするため結局の所は効率が悪くなります。昔はPCの速度も遅かったため、パラレルで同期処理を行うのが良かったのですが、今はそうも行きませんそこで登場するのがシリアルバスです。シリアルバスは先程も説明した通り、1ビットを連続で送り付けるのです。送られてきたデータをそのまま受け取ったので良いのです。昨今のPCは高性能で高速なため、1ビットずつ順番に送り付けるのでも十分な速度が出せる上に、線が少なくなって取り回しも良くなります。結局の所、現在のコンピュータにはシリアルバスの方が適していた、と言う訳です。USBの特徴USBのU、Universal(汎用)の言葉が示す通り、ホストとなる機器(多くの場合はPC)に様々な種類の周辺機器を接続する事を狙って策定された規格です。新規参入がしやすいと言った点があります。解説すると、USBは電力を供給する事にも利用可能です。卓上扇風機なる代物があったり、有線のマウスやキーボードなどが電池などを必要とせず動作するのもこのためです。(一説に依ると、USBで肉を焼く強者が居るらしい......?)1つのバスで127台......そんなに繋ぐ奴なんて普通は居ませんけどね(笑)ホットプラグに対応しているのも特徴です。従来のPS/2のキーボードやマウスは電源を入れた状態での抜き差しに対応していませんでした(差し替えても反応しません)しかし、USBは優秀なので電源を入れたまま抜き差ししてもきちんと動作します。「デバイスの安全な取り外し」を行わなくても大丈夫なのです。(例外的に、HDDなどは書き込みが終わってなかったりしたらデータが破損してしまうので「デバイスの安全な取り外し」を行いましょうね。)新規参入がしやすい、ですが、USBデバイスの製造には申請を行う必要がありますが、特許使用料が必要ありません。ルールさえ守れば誰でも参入が可能なのです、これが普及を促進したとか......?USB3.0の違いさて、ようやく本文らしくなって来ました。今までのUSBは2.0が主流でしたが、最近はUSB3.0が用いられることも増えて来ました。USB2.0と3.0は物理的な互換性があり、多くの場合はUSB2.0の周辺機器をUSB3.0の差込口に接続しても正常に動作します。その逆で、3.0の周辺機器を2.0の差込口に接続した場合でも大抵の周辺機器は動作する様に設計されています。USB2.0と3.0の違いは以下の通りです。供給出来る電力が500mAから900mAにパワーアップ転送速度はあくまで理論値ですが、多くの製品が実測値でも2~3倍ほど速くなっている様です。供給出来る電力が増えた事で今までより多くの周辺機器が外部電源無しに動作する様になります。言うより、SSDくらいなら動かせそうですけどね。見分け方ですが、USB3.0のコネクタは「青色」を使用する事が推奨されており、実際に多くの製品が青色のコネクタを採用しています。コネクタの色が青色だった場合は3.0対応と捉えても良いでしょう。LTE(理論値xxxMbps、※エリアに依ります※)」などの9割方詐欺に近い謳い文句の所為で痛い目を見た方が多いからか知れませんが、「速い」を素直に信じてくれる方がとても少ないです。(余談ですが、Mbpsなどの表記の中のbは多くの場合、「バイト」では無く「ビット」です。先程も説明しましたが、1バイトは8ビットです、すなわち、仮に理論値の1Gbpsが出たとしてもバイトに換算すると「128メガバイト/秒」と言う訳ですよ。)ですので、今回は外付けHDDを用いて、実証してみようと思います。「てめぇの方が詐欺だろks」とか言われない様に先に言い訳しておくと、以下の様な環境でテストしましたよ。4.0.3(x64)HDDケースは玄人志向のGW3.5AA-SUP3/MBを使用しました。GW3.5AA-SUP3/MBちなみにですが、このケースはS.M.A.R.Tに対応しています。測定してみた実際に、USB2.0と3.0ではどれくらいの速度差が出るのかを試してみようと思います。参考までに、内蔵(SATA接続)のHDDだと以下の様な結果になります。3TB(WD30EFRX)です。)まずはUSB2.0で測定してみようと思います。先程のHDDケースはUSB3.0ですが、2.0で接続しても動作しますので、それで測定してみます。以上の様な結果になりました。HDDは元々のランダムアクセス(4K)が遅いのでその辺りは問題ありませんが、シーケンシャルアクセスが4~5分の1くらいにまで低下しています。小さなファイルを複数取り扱ったりする場合は大差ないかも知れませんが、僕の様にバックアップ目的で利用すると大抵の場合はシーケンシャルアクセスの速度が重要になって来るので体感出来る程の差が表れて来ます。USB3.0で測定してみましょう。以上の様になりました。一部の値がUSB2.0より遅いのが多少気になりますが、SeqのReadに関してはSATA接続と遜色ないアクセス性能です。SeqのWriteに大した変化がありませんが、実際にバックアップを取りながらタスクマネージャーで見ていると書き込みも100MB/s以上出ている様です。結果、USB3.0は周辺機器やHDDなどに依って多少の前後は有るものの、全体的に見た場合に確かに高速化されています。今後はPC側のUSB3.0対応機種も増えて来るでしょうし、3.0の周辺機器でも多くの場合は2.0で問題なく動作するため、もし新しく購入するのであれば3.0対応の製品にしておいた方が良いかも知れませんね。3を買ってみた、必要な物やOSのインストールなどこんにちは、軽度(?)の変人(自称)、@HimaJyunです。今回はPC自作......続きを読む→Intuosを買ってみた、何が要るの?どれだけ要るの?など。デジ絵、そう、ペンタブ(ペンタブレット)と専用のソフトウェアで絵を描く奴ですね。......続きを読む→SSDを換装しようとしたらOSから再インストールするハメになった話どうも、お久しぶりです。更新が無かったのは深いワ......続きを読む→PREV[Bukkit/Spigot]自作プラグインで/titleと同じ事をするNEXT[Minecraft]チャットを抽出して表示する小物ツール作ったナカのヒト:HimaJyun​散って美しいのは桜だけです、情報はまとまっていた方が美しいのです。