FireWire vs. USB 2.0 с точки зрения IOMeter


Внешние жесткие диски с интерфейсами USB 2.0 и FireWire мы тестировали еще в конце зимы. Использование низкоуровневых тестов позволило сделать два вывода: FireWire несколько более предпочтителен, однако USB 2.0 на сегодня уже способен обеспечить достаточно высокую скорость работы, при большей совместимости с различными компьютерами. Однако скорость бывает разной.

Результаты, полученные работающими на низком уровне тестовыми программами, позволяют сделать достаточно точные выводы о потенциальных возможностях накопителей. Фактически, зависят они от характеристик самого жесткого диска (плотность записи, диаметр пластины, скорость вращения), да пропускной способности интерфейса (в тех случаях, когда она способна сказаться на результатах), однако при практическом использовании винчестера сказываются также и firmware самого накопителя, и конструктивные особенности интерфейса, а вот это уже бенчмарки данного типа никак не отслеживают. Соответственно, нужны тестовые программы, работающие на более высоком уровне, но с ними существует ряд проблем. «Программы по измерению всего» (типа SiSoft Sandra или PC Mark) обычно выдают таких попугаев… что лучше уж ограничиться низкоуровневыми тестами. Попытки применения реальных приложений в случае винчестеров тоже далеко не всегда приводят к нормальному (хотя бы точно повторяемому) результату. Единственное, что остается — попробовать выжать побольше информации при помощи IOMeter. Да, это тоже синтетика, однако, по крайней мере, программа имеет достаточно понятный алгоритм работы, неплохо коррелирующий с работой реальных программ, и позволяет узнать о накопителе несколько больше, нежели только пиковую скорость чтения данных или время доступа. Вот с ее-то помощью мы и попробуем выяснить два вопроса. Первый — насколько нам способны помешать дополнительные преобразователи интерфейсов в случае внешних винчестеров. И второй — какой же интерфейс лучше. Изучать это мы будем на примере 2.5″ винчестеров. Почему не взять более быстрые 3.5″? Все-таки внешние накопители на базе «мелочи» сегодня более популярны: их можно использовать и как стационарные, и как портативные, они не требуют внешних блоков питания и т.п. Производительность же их не так уж сильно уступает многим массовым моделям с дисками диаметром 3.5 дюйма, емкость уже достигла приемлемых величин, да и цена по карману очень многим пользователям. Впрочем, еще год назад вопрос, как себя поведут такие накопители при использовании их в качестве рабочих, просто не стоял — дорого и мало. Посему полностью хватало тестов на скорость чтения и записи, поскольку основной их задачей являлась транспортировка больших и очень больших файлов. Ну а сегодня… Впрочем, возможно, вы придете к выводу, что пока еще рановато использовать 2.5″ винчестеры в роли рабочих — что ж, значит, тестирование все равно было проведено не зря.

Методика и испытуемые

С выбором тестовой методики вопросов не возникало: были проведены стандартные для нашего сайта тесты при помощи IOMeter. Польза от стандартизации — можете открыть пару статей и самостоятельно сравнить поведение внутренних 3.5″ и внешних 2.5″ винчестеров в рамках одинаковых задач ;)

Описывать тестовую платформу я не буду, поскольку сделал это уже в прошлый раз. С тестируемыми можете познакомиться там же. Основным испытуемым являлся Seagate Momentus ST94811A, подключенный непосредственно к южному мосту компьютера, а также внутри коробочки Sarotech Cutie DX FHD-254 Combo, подключаемой к USB 2.0 и FireWire. Тесты были проведены на обоих имеющихся FW-контроллерах (VIA и TI), однако ввиду практически полной идентичности результатов я привожу лишь снятое на VIA, как более распространенном сегодня. Для полноты картины приведены также результаты двух внешних накопителей Fujitsu с интерфейсами USB 2.0 и FireWire. В совокупности это дает нам пять графиков, снятых на двух разных мостах FireWire-IDE, паре разных USB-IDE мостов, а также на двух отличающихся по производительности винчестерах (Fujitsu MHT AT является классической моделью с частотой вращения 4200 об/мин, в то время как Momentus это более новая модель со скоростью вращения 5400 об/мин). Согласитесь, что такого количества материала уже достаточно для того, чтобы сделать какие-либо выводы.

Последовательное чтение и запись

В принципе, низкоуровневые бенчмарки измеряют эти скорости, однако в их исполнении они слишком уж последовательные, чего в реальной практике не встречается. Результаты IOMeter куда интереснее. Начнем с чтения.

Правая часть графиков (с достаточно большим размером блока) — как раз то, что мы получили в прошлый раз при помощи AIDA. Куда более интересны результаты на блоках меньшего размера. Видно, что стартуют накопители с разных значений, причем они не зависят от конкретного винчестера, а лишь от типа интерфейса — на мелких блоках имеем штраф за одно преобразование интерфейсов, который больше в случае USB. По мере роста размера блока, растет и скорость чтения. Наиболее быстро «на режим выходит» вариант непосредственного подключения (4 Кбайта), в районе 16 Кбайт то же делает и FireWire, а вот в случае USB 2.0 максимальная скорость из винчестера выжимается лишь на блоках, не меньших, чем 64 Кбайт. Максимальная скорость работы в случае FireWire такая же, как обеспечивает винчестер сам по себе, USB 2.0 же догоняет FireWire лишь при использовании достаточно медленных винчестеров — скорости выше 30 Мбайт/с этой шине практически недоступны.

В случае операций записи картина сильно смазывается не слишком удачным поведением моста FireWire-IDE, используемого Sarotech, однако, тенденции сходные. Разумеется, лучше всего винчестер работает без лишних преобразований протоколов, однако если уж приходится ими пользоваться, то FireWire позволяет сделать это «меньшей кровью». Лучшие контроллеры USB лишь догоняют худшие мосты FireWire-IDE и то — только на блоках большого размера.

Случайное чтение и запись

Посмотрим, что нам дадут несколько чаще встречающиеся на практике операции со случайным доступом. Тут уж десятков мегабайт в секунду не ждите :)

Картина еще более интересная, нежели в случае последовательных операций. При небольшой нагрузке мосты не мешают винчестеру «идти на тот свет своим путем», удлинение же очереди приводит к интересным последствиям. Хорошо видно, что в USB нет никаких средств упорядочивания последовательности запросов, в результате чего производительность остается одинаковой, независимо от ее глубины. А вот для FireWire и IDE большая нагрузка повышает «отдачу» накопителя, так что производительность растет вместе с ней. Впрочем, лишнее преобразование хоть немного, но мешает, но только при небольшой длине очереди — в этом случае IDE обгоняет FireWire, однако при дальнейшем росте нагрузки определяющим фактором вновь становится сам винчестер. Более интересно другое: подобное различие между интерфейсами уже при небольшой нагрузке приводит к тому, что более медленный винчестер в коробке с интерфейсом FireWire начинает работать быстрее более быстрого, но через USB 2.0. Фактически, интерфейс USB так и остался удавкой на шее внешних винчестеров — рост пиковой пропускной способности, как и следовало ожидать, позволил увеличить лишь пиковую производительность, которая далеко не всегда равна реальной.

Наши постоянные читатели не удивятся тому, что на операциях случайной записи Fujitsu оказался быстрее Seagate: PATA-винчестеры последней фирмы до сих пор имеют определенные проблемы с реализацией записи, вследствие не самого удачного firmware (собственно, почему проблема и присутствует как в 3.5″, так и в 2.5″ моделях). Однако, за исключением смены ведущего и ведомого, ситуация похожа на ранее описанную, но чуть более сглажена — разница между интерфейсами проявляется только начиная со средней нагрузки, но, как и ранее, при большой USB 2.0 делает более быстрый винчестер более медленным. Любопытно, что в этих условиях FireWire-коробка обогнала самый простой вариант подключения, который должен бы быть быстрым всегда. Недостатки реализации записи в мосте сложились с ими же в винчестере, и минус на минус дал плюс? :) Может быть и так. Ситуация требует более глубокого изучения. Но вот то, что FireWire-винчестер ведет себя подобно IDE, а USB 2.0 накладывает свои, дополнительные, ограничения, можно утверждать точно. Так что эти два внешних интерфейса отличаются кардинально.

Database, File Server, Workstation

Основной упор в этих трех паттернах делается на случайное чтение, чуть в меньших количествах присутствует случайная запись, лишь в Workstation есть 20% последовательных операций. С учетом этих начальных условий, нужно ли приводить получившиеся графики?

Самые сообразительные могли бы нарисовать эскиз сами, остальным бы тоже хватило бы одного примера, чтобы догадаться, как это будет выглядеть. Более интересно погонять Database с разной длиной очереди и разным соотношением операций чтения/записи.

Самый простой случай — линейный. Все определяется винчестером, влияние интерфейса мизерное (хотя если приглядеться, то видно, что при большом количестве операций чтения, USB является самым медленным, но отличие там просто микроскопическое).

Длина очереди увеличена до 16. Графики «расклеились», хотя при большом количестве операций записи все опять же упирается в винчестер. Чем больше чтения, тем сильнее FireWire отстает от IDE, ну а USB 2.0 еще сильнее от FireWire.

При большой длине очереди, по сути, получили именно то, что и должны были, судя по результатам тестов случайного чтения и записи, — конкурировать с FireWire USB 2.0 не может. Даже если взять более быстрый винчестер, все равно не может (либо винчестеры надо брать слишком уж разными по производительности). В общем, не все интерфейсы одинаково полезны :)

Итого

Видимо, надо немного изменить один из выводов прошлой статьи. Сегодня лучшим выбором является коробка с комбинированным интерфейсом, если вы хотите максимально полной реализации всех возможностей накопителей, либо… недорогой корпус с USB 2.0 — его вполне хватит для большинства пользователей, а распространена USB 2.0 сегодня шире, но верно это только в том случае, если винчестер планируется использовать исключительно для транспортировки файлов большого объема (причем не только суммарного). С другой стороны, покупать накопитель емкостью более 20 Гбайт и использовать его только как большую дискету, не пробуя работать с данными прямо на нем (не переписывая их в другое место, другими словами), мало кому интересно, так что в итоге выходит, что экономить на корпусе не стоит. Лучше уж винчестер не такой быстрый купите — может оказаться, что итоговая скорость будет выше. Разумеется, все это можно в еще большей степени распространить и на внешние винчестеры на базе 3.5″ дисков — хоть в их случае и не получится идентичности результатов FireWire и IDE (в редких тестах, во всяком случае), но положение USB 2.0 будет еще хуже. Однако эти накопители — тема наших будущих статей, сегодняшнюю же с вашего позволения закончу на этом предложении :)




Оборудование для тестирования предоставлено компаниями
«Ultra Computers» и «ПИРИТ»





Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.