最近、大量の画像ファイルを扱うようになった。さくさんの MacBook Pro は、ストレージを1TB にアップグレードしているが、それでもストレージの容量が不足してしまった。
データの整理と引き継ぎを考えて、ファイルは外付けSSDで管理することにした。速度のことを考えなくて良い場合(e.g.ラズパイで構築した録画サーバー)であれば、外付けHDDを使ったがランダムアクセスが多発しそうだったので HDD は却下して SSD を採用した。
別々にSSDとSSDケースを買って 外付けSSDを作った!
Twitter で「既製品の外付けSSDを買うよりもSSDとケースを別々に買って自作した方が良い」と教えてもらったので、カタログスペック上の速度を重視して「WD Blue SN570 1TB」と「UGREEN 90264」を買った。
SSDケース「UGREEN 90264」は想定していたよりも小さくて持ち運びにもよさそうだった。iPhone 11 Pro よりも小さくて狭いデスク上でも取り回しが効いて嬉しい。
外付けSSDのアクセス速度が遅すぎる問題が発生
しかし、SSDのはずなのにアクセス速度が遅すぎて困っていた。
- MacBook Pro は、USB 4 (最高10Gbps) に対応している
- UGREEN 90264 は、USB 3.2 Gen 2 (最高10Gbps) に対応している
……なのに 最高480Mbps として認識されてしまう。実測値が遅いと言うレベルではなくて規格レベルで遅いようだ。
外付けSSDのアクセス速度が遅いのは USBケーブルが原因
紆余曲折の調査の結果、原因は USB 2.0 準拠のケーブルを使っている だった。
このケーブルは PD・100W/5V 対応のケーブルだったため、USB 3.x 準拠のケーブルだと勘違いしていた。手元にあった USB 3.2 Gen 2 対応のUSBケーブルに変えたところランダムアクセスで10倍ほど早くなった。
AmorphousDiskMark 4.0 を使ってアクセス速度を計測をしたところ、シーケンシャルアクセスで25倍、ランダムアクセスで8倍ほど早くなった。