Многие новые платы и устройства на базе ARM будут поддерживать улучшенные интерфейсы подключения, такие как Gigabit Ethernet, USB 3.0 и Wi-Fi 802.11ac. Поскольку медиафайлы хранятся на жестком диске с USB 2.0, а сеть до сих пор использует Fast Ethernet и 802.11n, пришлось отправиться за покупками. Уже приобретены 5-портовый Gigabit-коммутатор ( D-Link DGS-1005A ) и внешний жесткий диск с USB 3.0 ( Seagate Expansion 1TB Portable External Hard Drive ), но пока не найден подходящий по цене и качеству маршрутизатор 802.11ac (предложения приветствуются).
Планируется использовать диск с USB 3.0 для тестирования передачи файлов через Gigabit, проверки производительности USB 3.0 и совместимости файловых систем. Диск был разбит на разделы с четырьмя распространенными файловыми системами: NTFS, EXT-4, FAT32 и BTRFS. Для проверки пригодности диска для Gigabit-передачи и в качестве точки отсчета были проведены тесты производительности.

Существует несколько инструментов для тестирования производительности дисков, но в итоге был выбран Bonnie++ в Ubuntu 14.04 из-за привычности и наличия версии для Android (версия 1.96), что может быть полезно для будущих тестов.
Использовались настройки по умолчанию с запуском bonnie++ -d mount_point. Программа использует удвоенный объем ОЗУ (16 ГБ) для записи на жесткий диск, поэтому удалось протестировать только NTFS, EXT-4 и BTRFS, так как FAT32, вероятно, столкнулась с ограничением на размер файла в 4 ГБ, и bonnie++ не смог выполнить тест. Результаты представлены ниже (таблица сгенерирована с помощью bon_csv2html).
Version 1.97 | Sequential Output | Sequential Input | Random Seeks |
||||||||||
Size | Per Char | Block | Rewrite | Per Char | Block | ||||||||
K/sec | % CPU | K/sec | % CPU | K/sec | % CPU | K/sec | % CPU | K/sec | % CPU | /sec | % CPU | ||
NTFS | 32056M | 10 | 31 | 46087 | 29 | 25147 | 18 | 1031 | 95 | 109659 | 16 | 83.4 | 5 |
Latency | 877ms | 582ms | 714ms | 34228us | 141ms | 2331ms | |||||||
EXT-4 | 32056M | 333 | 97 | 93965 | 29 | 44169 | 15 | 1300 | 98 | 115730 | 18 | 123.4 | 5 |
Latency | 61461us | 293ms | 5386ms | 26539us | 149ms | 1451ms | |||||||
BTRFS | 32056M | 262 | 94 | 67092 | 14 | 31259 | 12 | 1303 | 97 | 79122 | 12 | 123.6 | 4 |
Latency | 33807us | 8701ms | 16653ms | 28666us | 449ms | 878ms |
Полные результаты с данными sequential create и random create доступны по ссылке .
Можно ознакомиться с readme Для полного понимания терминологии, используемой в Bonnie++, следует отметить, что тесты последовательного вывода измеряют скорость записи с использованием функций putc (посимвольная) и write (блочная), а тесты последовательного ввода проверяют скорость чтения с помощью функций getc и read. Согласно этим тестам, файловая система ext-4 оказалась наиболее подходящей, демонстрируя скорость чтения около 113 МБ/с и записи — 91,7 МБ/с. NTFS и BTRFS показали значительно более низкие результаты, особенно в плане производительности записи. Скорость 113 МБ/с соответствует примерно 908 Мбит/с, что близко к теоретическому пределу Gigabit Ethernet.
Также проведено тестирование накопителя с помощью утилиты «Disks» в Ubuntu, однако этот инструмент, по-видимому, измеряет «сырую» скорость, так как было замечено, что он может размонтировать разделы перед запуском теста. Ниже приведены результаты для разделов NTFS, ext-4 и BTRFS.

Можно заметить, что производительность снижается по мере перемещения головки чтения по диску, что ожидаемо для механического накопителя. Раздел 1 демонстрирует среднюю скорость 104.5 МБ/с, раздел 2 — 95.2 МБ/с, а раздел 4 падает до 62.9 МБ/с в среднем, достигая всего около 50 МБ/с на краю диска. Это, вероятно, объясняет относительно низкие показатели BTRFS в тесте Bonnie++.
Для сравнения также протестирована производительность внутреннего диска (Seagate 1TB — ST1000DM003-9YN162 ) и внешнего USB 2.0 накопителя (Seagate Expansion, также ST1000DM003-9YN162). Внешний USB 3.0 накопитель был определен как Seagate Momentus drive (ST1000LM024 HN-M101MBB) от Disks, поэтому интересно посмотреть, какую производительность можно получить при подключении через разные интерфейсы: SATA, USB 3.0 и USB 2.0.

Как и ожидалось, SATA II по-прежнему значительно быстрее USB 3.0 со средней скоростью чтения 142,8 МБ/с. Однако разброс значений довольно велик — от 200 МБ/с до 50 МБ/с. Резкое падение до 50 МБ/с может быть связано с тем, что диск используется системой, и в этот момент к нему обращается другой процесс (требует уточнения).

Теоретически USB 2.0 обеспечивает пропускную способность 480 Мбит/с (60 МБ/с), но в этом тесте скорость передачи была стабильной и чуть ниже 30 МБ/с, что указывает на ограничение интерфейсом USB 2.0, а не механической частью накопителя. Такой диск не подходит для передачи файлов по гигабитному соединению.
В завершение планируется протестировать передачу файлов по гигабитной сети и через 802.11ac с использованием внутреннего жесткого диска ПК через HTTP, проверить воспроизведение видео с диска USB 2.0 через SAMBA/CIFS (если не потребуется работа с видео с битрейтом 200 Мбит/с+), а также напрямую подключить диск USB 3.0 к TV Box или мини-ПК для тестирования передачи файлов и поддержки файловых систем.
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.