Mavericksの暗号化された外部ドライブへの書き込み速度が非常に遅い


10

Mavericksで完全に暗号化されたUSBフラッシュドライブへの書き込みは非常に遅くなります。

テストに使用したドライブモデルは、Kingston DataTraveler Ultimate 3.0 G3(64 GB)でした。暗号化されたドライブと暗号化されていないドライブの両方に対して大きなファイルを読み書きすることで、転送速度をテストしました。私はMavericksを搭載した最新のMacbookとMountain Lionを搭載した古いマシンでテストしました。ディスクユーティリティを使用して、ドライブをMac OS拡張(ジャーナリング)およびMac OS拡張(ジャーナリング、暗号化)としてフォーマットしました。

MacBook Pro(2013)、OS X 10.9.2(13C64)を実行するUSB​​ 3.0

書き込み:86.16 MB /秒(暗号化:0.62 MB /秒)
読み取り:181.66 MB /秒(暗号化:151.15 MB /秒)

OS X 10.8.5(12F45)を実行するUSB​​ 2.0を搭載したMacBook Pro(2007)

書き込み:23.57 MB /秒(暗号化:5.04 MB /秒)
読み取り:36.23 MB /秒(暗号化:37.87 MB /秒)

古いマシンで見ることができるように、暗号化されたボリュームに書き込むときの書き込み速度は明らかに低下しますが、Mavericksを実行する新しいマシンと比較すると、約10倍高速です。これは、FileVaultまたはCoreStorageで最近導入された問題ですか?

アップデート(2014-06-28)

USBドライブには最初からハードウェアの欠陥があったようです。期待どおりの結果が得られない交換用ドライブ(同じモデル)を入手しましたが、少なくとも2013 MBPの暗号化された書き込み速度は2007 MBPと同等です。

MacBook Pro(2013)、OS X 10.9.3(13D65)を実行するUSB​​ 3.0

書き込み:135.41 MB /秒(暗号化:9.29 MB /秒)
読み取り:196.22 MB /秒(暗号化:187.04 MB /秒)

OS X 10.8.5(12F45)を実行するUSB​​ 2.0を搭載したMacBook Pro(2007)

書き込み:-MB /秒(暗号化:9.39 MB /秒)
読み取り:-MB /秒(暗号化:37.79 MB /秒)

2013 MBPのUSBドライブへの暗号化された書き込み速度が通常の書き込み速度の10%未満である理由はまだ疑問です。また、2013 MBPの内部SSDでFileVaultをアクティブ化する前後の読み取り/書き込み速度を比較したところ、速度低下をまったく検出できませんでした。


1
うわー-通常の読み取り/書き込みと暗号化された書き込みはよく見えます。しかし、暗号化された書き込みは非常に遅いです。MB /秒を測定しているツールは何ですか?Blackmagic(MASでは無料)を使用してこれらの結果を再現できますか
bmike

私が利用、単純なバッシュワンライナーを使用timeddおよびawk。Blackmagicでも同じ結果が得られます:goo.gl/bn32fC(非暗号化)とgoo.gl/yghyqA(暗号化)。
Stefan Schmidt

暗号化されたボリュームの読み取り速度が欠落しているのは、読み取りの継続時間がBlackmagicのスループットサンプリング間隔よりも短いためと思われます
Stefan Schmidt

回答:


2

同じ問題がありますが、フラッシュメモリでの書き込み操作とコアストレージ(またはボリューム全体)の暗号化の動作の組み合わせが原因であると確信しています。

まず、書き込み動作:揮発性メモリ(コンピューターのメモリで使用されるもの)またはハードディスクとは異なり、ビットはいつでも0または1に書き込むことができますが、フラッシュメモリには、書き込みと消去という2つの主要な状態があります。「書き込まれた」内には0と1があります。フラッシュメモリに書き込む必要がある場合は、現在消去された状態にあるブロック全体を書き込む必要があります。OSのファイルシステムソフトウェアは、どのブロックが空いているかを認識している場合がありますが、フラッシュデバイス上のコントローラーとストレージは認識していません。OSがSSDにブロックを使用可能にするように指示する特別な方法が「バス接続」SSD用に考案されました。これはTRIMと呼ばれます。USBプロトコルスタックは、私の知る限り、TRIMをサポートしていません。したがって、基本的に、フラッシュメモリは実際に消去されたブロックがなくなるまでいっぱいになり続けます。その時点で、ファイルシステムはブロックを読み取ってブロックを消去および再書き込みする必要があります。新しいデータをマージし、消去してから書き戻します。そのため、SSDの小さなファイルの書き込みパフォーマンスは時間とともに低下します。

暗号化されたボリュームの特別な状況は興味深いです:暗号化の動作方法によっては、実際にボリューム全体を暗号化し、ブロックが実際に未使用でゼロが含まれている場合でも、ランダムなデータのように見えるすべてのブロックを埋めることがあります。したがって、FileVaultをオンにすると(またはコアストレージ暗号化を有効にすると)、基本的にボリューム全体が消費され、書き込み操作のためのスペースがなくなります。ファイルシステムは、暗号化されたデータでブロックを再書き込みできるように、ブロックを常に読み取り、消去、再書き込みする必要があります。

さて、これは物事の合理的な理解に基づく推測であると私は言いますが、実際に詳細を知っており、私の説明を修正または改善する可能性がある人々がいるので、そうしてほしいと思います。


それは確かに非常に合理的に聞こえます。私は少し掘り下げましたが、外付けドライブではeSATAとThunderboltの両方がTRIMをサポートしているようです。これは外付けSSDに関しては興味深いかもしれませんが、MacにはeSATAインターフェイスがなく、手頃な価格のThunderboltサムドライブがすぐに利用できるようには見えないため、おそらくサムドライブには向か
Stefan Schmidt

1
誰かが疑問に思っている場合に備えて:当面の私の回避策は、ドライブの容量と同じサイズのドライブ上に暗号化されたスパースバンドルを作成することです。ベンチマークはしませんでしたが、暗号化されていないデータをドライブに書き込むのとほぼ同じように感じます。
Stefan Schmidt

@StefanSchmidtここで説明されているような暗号化されたスパースバンドル?blog.fosketts.net/2015/07/22/...
ブラッドCupit

@BradCupitはい、ただし、スパースバンドル自体ではなくスパースバンドルのコンテンツを同期するためhdiutil attach、を使用rsyncしてスパースバンドルをマウントし、を使用してローカルフォルダーと同期し、を使用してスパースバンドルをアンマウントし、を使用しhdiutil detachてディスクドライブをイジェクトしdiskutil ejectます。
Stefan Schmidt
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.