Экспресс-тестирование внешних SSD с интерфейсами USB3 и Thunderbolt3 на операциях со случайным доступом

В обсуждении большинства статей, посвященных внешним SSD, регулярно поднимается вопрос: почему мы не тестируем накопители на «мелкоблочке», хотя в статьях про внутренние модели такие сценарии используются? А если говорить не только про наши статьи, то это весьма популярная спортивная дисциплина, причем сделало ее таковой само по себе распространение твердотельных накопителей. Объясняется просто: на подобных операциях со случайным доступом все жесткие диски «тормозят» безбожно, а все SSD работают неплохо. Или хорошо. Или очень хорошо. Так что их легко сравнивать и в этом ключе. Правда, практической пользы от этого немного: максимальная производительность достигается в очень синтетических сценариях, в реальной жизни не встречающихся.

Потом читатель смотрит на безумные цифры на длинных очередях, сравнивает это с чахлыми показателями винчестеров, воодушевляется, рассчитывает на то, что после замены накопителя все ускорится вот в это самое огромное количество раз, и... ничего близкого не получает. Дело в том, что на практике в обычной персональной системе случайный доступ важен — но без очереди. И тут уже различий между разными накопителями меньше, поскольку при чтении, например, все определяется латентностью самой флэш-памяти. В итоге все SSD оказываются примерно равными друг другу — да еще и с запасом справляются с реальными запросами программ, не оказываясь в системе «узким местом».

С другой стороны, подобные синтетические тесты интересны, если сравнивать не накопители, а их интерфейсы. А то ведь на деле многие до сих пор считают USB медленным — вспоминая времена ранних версий стандарта, когда даже управления очередью команд не было. А что сейчас? Особенно если говорить не только про USB, но и про другие интерфейсы, благо их ассортимент за последние годы значительно расширился. На регулярной основе проводить такие тесты смысла не имеет (по нашему мнению), но разок для интереса можно. Сегодня как раз такой «разок» и настал.

Методика тестирования и испытуемые
Итак, сегодня мы ограничимся низкоуровневыми бенчмарками CrystalDiskMark 6.0.0 и Anvil’s Storage Utilities 1.1.0, благо их для выяснения поставленных вопросов необходимо и достаточно. Тестирование будем проводить на NUC 7i7BNH — на который плавно «переместились» в процессе изучения внешних SSD. Несмотря на компактные размеры, этот компьютер предоставляет в наше распоряжение разъем M.2 с поддержкой PCIe 3.0 x4, слот для «обычных» ноутбучных накопителей с SATA-интерфейсом, порты USB3 Gen1 и один порт Type-C, поддерживающий Thunderbolt3 и USB3 Gen2. Все интерфейсы мы сегодня задействуем.

Основным рабочим телом будет служить NVMe-накопитель Hikvision Crius E2000 1 ТБ — недорогая, но шустрая модель на базе контроллера Phison E12. Внутри компьютера он будет использоваться непосредственно, для внешних интерфейсов нам потребуется помощь трех коробочек, ранее уже изученных. Во-первых, Wavlink ThunderDrive II — как можно догадаться по названию, для подключения к хост-системе в ней используется Thunderbolt3. Во-вторых и в-третьих, пара безымянных корпусов на базе контроллеров ASMedia ASM2362 и Realtek RTL9210 — они рассчитаны на USB3 Gen2, но совместимы и с Gen1.
А еще нам нужно сравнение с SATA, для чего потребуется другой SSD. В качестве такового возьмем SanDisk Ultra 3D на 500 ГБ. Просто потому, что это достаточно быстрая модель, попавшаяся под руку. Для демонстрации основных тенденций — подойдет не хуже любого другого подобного накопителя.

Последовательные операции
Но начнем мы сегодня с последовательных операций — благо обе низкоуровневых утилиты измерять и их скорость умеют. Точнее, считается, что умеют — почему многие этим и пользуются. Мы же не раз отмечали странности в работе CrystalDiskMark — особенно в однопоточном режиме, особенно для внешних накопителей. Сейчас у нас таковых много, так что можно свести результаты воедино.

11lr.png
Как видим, единственный тест, выдающий правдоподобную информацию в большинстве случаев — многопоточный режим CrystalDiskMark: позволяет полностью загрузить работой накопитель или интерфейс: что окажется «слабее». В большинстве, но не во всех — связка RTL9210 с данным SSD все равно выглядит чудесато в режиме USB3 Gen2. Но это единственная странность. Результаты же в однопоточном режиме (у Anvil’s Storage Utilities таковой тоже есть — в качестве основного и единственного) вообще больше зависят от самой программы, а потом уже от испытуемых.

12lw.png
Что касается записи, то тут многопоточный режим CrystalDiskMark отработал без ошибок во всех случаях, а с остальными — все, как и ранее. В общем, полагаться на эти тесты мы не рекомендуем. И сами так не делаем, предпочитая NASPT — работающий на файловом уровне. Для внешних накопителей это еще более актуально, чем для внутренних. Жесткие диски тестировать-то получалось, поскольку они сами по себе медленные — на фоне чего взбрыки тестовых программ терялись. Теперь же им пора уйти на покой.

По крайней мере, для измерения линейных скоростей есть более надежные инструменты. А вот для случайного доступа к данным их в чистом виде немного. Так что посмотрим, что выходит в данном случае — для этого же все тестирование и затевалось.

Случайный доступ; CrystalDiskMark
21cdm4kread.png
Первое на что стоит обратить внимание — внешние интерфейсы скорости «режут» и сильно. Даже Thunderbolt3 проигрывает внутреннему подключению того же SSD в полтора раза — а USB снижает производительность и вовсе на порядок. При этом пропускная способность не ограничение — Gen1 и Gen2 практически эквивалентны. Но есть и ложка меда — как мы уже сказали выше, в реальности более важны операции «без очереди», а тут такого падения нет. «Болт» вообще производительность почти не ограничивает, USB свои особенности имеет — но снижение в пару раз всего лишь делает такой внешний SSD эквивалентным внутреннему SATA. Чего на практике более чем достаточно.

22cdm4kwrite.png
Запись обычно выполняется быстрее, поскольку тут и «без очереди» можно немного разнести работу по разным банкам благодаря внутреннему параллелизму. Но, к сожалению, USB3 этому мешает, так что производительность оказывается низкой — даже ниже, чем у SATA. А предельные возможности этого интерфейса одинаковы и при записи, и при чтении, то есть являются именно его характеристикой. Считать их высокими или низкими? Смотря с какой стороны посмотреть.

С одной стороны, это не позволяет целиком и полностью воспринимать USB как альтернативу традиционным внутренним интерфейсам. С другой стороны, оно не мешает внешнему SSD и в таких сценариев работать радикально быстрее любых жестких дисков — хоть внешних, хоть внутренних. То есть в принципе хватает — поэтому и тесты высокого уровня разницы между интерфейсами «не видят». А на более низком уровне разница по-прежнему существует.

Случайный доступ; Anvil’s Storage Utilities 1.1.0
31anvil4kread.png

32anvil4kwrite.png
Верно сказанное выше — только вот очереди в «насыщенных режимах» этой программы короче, так что и падение производительности от превращения SSD во внешний гораздо меньше. И, что еще важнее — подтверждается тот факт, что USB3 — это всегда USB3. Как бы это ни называлось и какую бы пропускную способность ни имело — сама логика работы не меняется с момента появления спецификаций версии 3.0 более 10 лет назад. И именно она определяет собственные задержки работы шины — очень хорошо заметные при использовании быстрых SSD. Вот медленным SSD или, тем более, жестким дискам — и этого с запасом. Но с тех пор мир немного изменился.

Thunderbolt3 же заметно отзывчивее. Понятно, что двойное преобразование среды передачи тоже дает о себе знать — но задержки все равно радикально ниже, чем у USB3 или даже SATA/AHCI. Поэтому данного внешнего интерфейса практически достаточно уже для любых сфер применения.

33anvilread.png
Единственный случай, когда «играет» и пропускная способность — работа с блоками по 32К и 128К. Впрочем, собственные задержки USB3 остаются заметными — в этом плане интерфейс неисправим.

Итого

34anvilscore.png
Anvil’s Storage Utilities подсчитывает и рейтинг производительности — по операциям чтения, записи и абсолютный. При усреднении апельсинов с бегемотами бывает всякое, но в первом приближении можно считать, что USB3 Gen2 снижает производительность быстрого NVMe-накопителя в три раза, а Gen1 — и вовсе в четыре. Поэтому использовать низкоуровневые тесты для сравнения внешних накопителей не имеет смысла: раз за разом измерять интерфейс попугаями — занятие бестолковое. При этом практическое значение имеет то, что уровень производительности, обеспечиваемый USB3, соответствует возможностям SATA-накопителей.

То есть когда речь идет не об установке рекордов, а о простом использовании внешнего накопителя как альтернативы внутреннему, особых проблем это не вызывает — на уровне среднестатистической достаточности. С Thunderbolt3 история немного другая: это более быстрый интерфейс, причем в плане не только пропускной способности, но и минимальных задержек. Таким образом, сфера его применения может быть гораздо более широкой — в том числе, и при профессиональном использовании.

Таковы итоги на текущий момент. В ближайшем будущем грядет внедрение USB4 — к чему потихоньку готовятся все производители. Серьезное изменение номера версии — не на пустом месте: нас ожидает не только увеличение пропускной способности, но и изменения внутренней логики. Впервые за много лет. Как это скажется на задержках? Проверим, как только представится техническая возможность.


iXBT
 
Назад
Сверху Снизу