Какая максимальная типичная скорость возможна для накопителя USB2.0?

73

Я получаю только 30 МБ / с между моим компьютером и USB-накопителем, несмотря на то, что USB 2.0 поддерживает передачу данных со скоростью 480 МБ / с (или 60 МБ / с). (Поэтому я получаю только половину номинальной скорости) Есть ли что-то в стандарте USB, что должно привести к таким половинным кажущимся скоростям?

Билли ОНил
источник
6
Максимальная типичная скорость? Разве это не оксюморон?
Мердад
3
@ Mehrdad: Не совсем. Максимальная типичная скорость передачи гигабитной локальной сети находится в диапазоне 100 МБ / с, хотя теоретическая скорость выше.
Билли ОНил
3
О, тогда ты имеешь в виду максимальную практическую скорость, верно?
Мердад
3
@ Mehrdad: то же самое. Да уж.
Билли ОНил
У вас есть какой-либо вид сжатия или, возможно, работает несколько антивирусных сканеров? Попробуйте отключить их. Убедитесь, что кабель рассчитан на USB 2.0. Если он старый, это может быть кабель с более медленным рейтингом. Я полагаю, вы бы что-то сказали, если бы он проходил через USB-концентратор. Это медленно для других устройств, таких как флэш-накопитель (вам нужно проверить его номинальную скорость передачи данных).
Котро,

Ответы:

43

USB 2 использует кадры 1 миллисекунды, а в режиме High Speed ​​(480 Мбит / с) они разделены на 8 микрокадров. Максимальный размер пакетов (используемых USB-накопителями) составляет 512 байт. Согласно этому очень информативному документу теоретический максимум составляет 13 пакетов на микрокадр. Таким образом, теоретическая максимальная скорость USB 2:

1000 * 8 * 512 * 13 = 53248000 ~ = 53 МБ / с

Этот другой документ от Cypress говорит ближе к концу, что они фактически достигают 43 МБ / с .

На практике пределом обычно является сама вспышка.

Изменить: Эта информация на самом деле также в спецификации USB 2 .

Таблица спецификаций USB

Timmmm
источник
1
Исходя из моего опыта, вы можете вычесть 20% из верхней части большинства оценок пропускной способности для общих накладных расходов. Тогда это вопрос оборудования. Стандарт может быть таким же, но качество оборудования сильно отличается.
Дон Кертис
1
Первый документ Cypress гласит: «Даже этот предел [из 13 пакетов] недостижим с текущими хост-контроллерами, которые могут принимать 10 массовых пакетов / микрокадр или отправлять 8 массовых пакетов / микрокадр» 10 пакетов дают нам 42 МБ / с, что является часто цитируется лимит "реального мира" 30-40 МБ / с
nponeccop
26

Ваша флешка является узким местом. Они не могут достичь теоретического максимума 60 МБ / с. Вот выдержка из Википедии :

Современные флешки имеют возможность подключения USB 2.0. Однако в настоящее время они не используют полные 480 Мбит / с (60 МБ / с), которые поддерживает спецификация USB 2.0 Hi-Speed, из-за технических ограничений, присущих NAND-флэш-памяти. Самые быстрые в настоящее время доступные накопители используют двухканальный контроллер, хотя они все еще значительно не соответствуют скорости передачи, возможной с жесткого диска текущего поколения, или максимальной скорости USB. (...)

Типичные быстрые диски утверждают, что читают со скоростью до 30 мегабайт / с (МБ / с) и записывают со скоростью примерно вдвое меньше. Это примерно в 20 раз быстрее, чем у USB 1.1 «полноскоростных» устройств с максимальной скоростью 12 Мбит / с (1,5 МБ / с).

NMAT
источник
6
Это не флешка. Я копирую на это -> amazon.com/Western-Digital-Passport-Essential-Portable/dp/… - я спрашиваю, каков предел интерфейса, а не о конкретном устройстве. (Я хочу знать, достигает ли устройство практического предела; в первую очередь это причина этого вопроса)
Billy ONeal,
1
Извините, я неверно истолковал ваш вопрос. Вы не указали, а 30 МБ / с - это обычная скорость для флэш-накопителей, поэтому я подумал, что вы используете ее.
NMAT
Понимаю. С другой стороны, я действительно не спрашивал, что является узким местом, не так ли? :)
Billy ONeal
4
Честно говоря, я не думаю, что у стандарта есть ограничения. Стандарт имеет теоретический максимум, и реализация обычно ограничивает его. Поэтому, если вы хотите узнать причину медленной скорости, вы должны взглянуть на реализацию. В случае флэш-накопителей проблема заключается во флэш-памяти NAND, а в случае жестких дисков - в логике контроллера. Даже высокоскоростные контроллеры едва превышают 30 МБ / с.
NMAT
1
Я не думаю, что это флэш-накопитель, я
перевожу
20

Около 30 МБ / с вполне типичная максимальная скорость передачи.

Соединения USB 1.0 и USB 2.0 являются полудуплексными, что означает, что данные передаются только в одном направлении за раз. Совместное соединение между обоими направлениями, вероятно, является основной причиной замедления, чем ожидаемая скорость передачи.

Для сравнения, USB 3 и Ethernet являются полнодуплексными и лучше соответствуют ожидаемой скорости передачи.

На моей машине скорость флэш-накопителя USB2 никогда не превышает 33 МБ / с в тестовом приложении, даже если Windows сообщает о скорости 33-37 МБ / с. Я провел некоторое тестирование и включил дисковый кеш (свойства устройства) и увеличил максимальный размер передачи usb до 2 МБ (KB2581464), но не смог сделать это быстрее.

Cmazai
источник
7

Интерфейс USB 2.0 может быть ограничен из-за сигнализации и служебных команд, а также из-за расстояния между пакетами.

У меня быстрый SSD, подключенный по USB 2.0. Привод намного быстрее, чем интерфейс (более чем в 10 раз).

Максимальная скорость чтения составляет около 33 МБ / с, а скорость записи - 17,5 МБ / с. Скорости записи почти на 50% медленнее из-за проверки-чтения после записи и того факта, что сигнал USB является полудуплексным, как упоминается в другом ответе.

Adisak
источник
Это звучит как проблема с вашим контроллером. Я часто вижу скорость записи намного выше, чем 17,5 МБ / с, даже при сравнительно дешевых дисках, по USB 2.0.
Билли ONEAL
Вы пишете кеширование? Я говорю о реальных сырых числах, запускающих программу тестирования производительности диска, используя write с verify.
Adisak
1
Программы тестирования производительности дисков часто используют нереальные параметры для этих контроллеров USB. USB имеет очень высокие издержки для каждого объекта или передачи, связанные с переключением в режим массовой загрузки. Копирование больших файлов на USB-накопитель не приводит к этой проблеме. Кэширование записи не могло иметь слишком большого эффекта, учитывая, что я смог сразу же вставить диск в другую машину, и данные не были повреждены.
Билли ONEAL
USB-накопители часто имеют более медленную запись, чем скорость чтения, но разница в скорости не из-за USB. Вы можете купить более быстрые USB-накопители, которые пишут на более высоких скоростях.
Дэн Бюлер
6

С iMac середины 2007 года и одним диском Verbatim USB2 для передачи данных на диск FW800 я получаю 36-37 МБ / с. Это уже очень хорошо для USB2.

Если я добавлю вторую передачу с другого диска USB2 (Packard Bell), подключенного к тому же концентратору USB2, к тому же накопителю FW800, общая скорость передачи увеличится до 42 МБ / с. Это исключительное, и это самая высокая скорость передачи данных, которую я когда-либо видел на USB2.

Более 35-40 МБ / с на USB2.0 практически невозможно, и я уже выделил контроллер USB2 только для этих дисков, без вмешательства мыши или других устройств.

OlafM
источник
4

USB 2.0 поддерживает скорость передачи данных 480 Мбит / с . На странице Википедии говорится, что эффективная пропускная способность составляет до 35 МБ / с. Существует несоответствие, потому что биты обычно не передаются между устройствами так же, как они представлены внутри. При передаче данных между устройствами необходимо учитывать ряд факторов, например электромагнитные помехи.

http://en.wikipedia.org/wiki/8b/10b_encoding

Ссылка выше является примером схемы кодирования. Используется USB 3.0.

user178351
источник
1
8b10b - это 20% накладных расходов. 20% от 480 Мбит - это 384 Мбит, это ~ 48 МБ / с. Все еще значительно быстрее, чем то, что я вижу на практике где угодно.
Билли Онил
3

Я никогда особо не задумывался о расчете скорости, но очевидно, что с этим типом передачи связаны реальные накладные расходы. Я искал в Google и находил пост за постом со скоростями, как вы описали, заставляя меня задуматься о чем-то.

Я просто извлек USB 2.0 внешний накопитель Seagate емкостью 1 ТБ, отформатировал его и решил скопировать выборку, достаточно большую для тестирования: 13 595 211 905 байт (около 12 ГБ). Я использую Symantec Endpoint Protection AV.

Согласно этому калькулятору , копирование заняло всего 3:46 минут с 0% накладных расходов, но на самом деле это заняло 9:17, а моя скорость упала до 23,9 МБ / с.

Затем я перезагрузился (чтобы очистить память) и попытался сделать это без моего AV, и это все равно заняло 9:15, или только на 2 секунды меньше (я думаю, что это хорошая новость для Symantec AV по крайней мере).

Казалось бы, это действительно "теоретические числа".

KCotreau
источник
PS Скорость 480 Мб - для всех устройств на концентраторе, но в моих тестах это были просто привод и мышь, и я сомневаюсь, что мышь оказала большое влияние.
Котро
1
Около 24-26 МБ / с - это скорость, которую я видел на довольно многих устройствах, использующих USB2.0
Сатьяджит Бхат
1

Этот пост немного устарел, поэтому не уверен, что он по-прежнему актуален или полезен, но скорость USB 2 обычно максимально достигает 280 Мбит / с (35 Мбит / с) из-за доступа к шине.

Взято из вики:

USB 2.0 был выпущен в апреле 2000 года, добавив более высокую максимальную скорость передачи сигналов> 480 Мбит / с, называемую High Speed, в дополнение к скорости USB 1.x Full Speed> 12 Мбит / с. Из-за ограничений доступа к шине эффективная пропускная способность> скорости высокоскоростной сигнализации ограничена 35 МБ / с или 280 Мбит / с.

Надеюсь, это прояснит ...

SaltyCornelius
источник
0

Любая цепь настолько сильна, насколько слабее ее звено. Потенциально слабая производительность передачи при использовании устройств USB2 включает в себя все, от прошивки хост-контроллера, программного обеспечения драйвера, используемых физических кабелей (короче и толще, может быть, немного лучше?) И, возможно, наиболее важно сами фактические подключенные устройства и любые прошивки, микросхемы флэш / кэш-памяти и наиболее точно производительность вращающегося диска, хорошо известное узкое место пропускной способности.

Проверьте в логическом порядке доступную пропускную способность ввода-вывода - производительность процессора / контроллера / производительность кэш-памяти L1 / L2, производительность микропрограммного обеспечения / флеш-накопителя, а затем на порядок меньшую производительность дисков с медленным вращающимся диском.

Заявленная теоретическая максимальная производительность (480 мегабит или 60 мегабайт в секунду) предназначена только для шины, а не для подключенных к ней вещей, и зачастую фактическая наблюдаемая производительность значительно ниже.

боб
источник
-2

Жесткие диски 5400 об / мин с USB2 ограничены аппаратным обеспечением привода и контроллером SATA. Даже 7200 оборотов в минуту или 10000 оборотов в минуту в хорошем USB-накопителе не так уж и много. Вам нужен SSD для достижения предела USB2. Большая часть «потерянной полосы пропускания» на самом деле представляет собой задержку контроллера, когда требуется только время, чтобы перейти от записи данных к отправке сигнала завершения.

Павел
источник
2
Мои жесткие диски 5400 об / мин могут работать намного лучше, чем 30 МБ / с
Billy ONeal
@BillyONeal Может, да, но будет ли это? В плохих сценариях использования (случайный ввод-вывод), которые могут легко уменьшаться до 1 МБ / с.
Мартен Бодьюс
1
@MaartenBodewes: Это был вопрос о последовательном вводе / выводе - «максимальная» скорость, а не скорость для данной рабочей нагрузки.
Билли ONEAL