Компания ORICO прислала нам образец корпуса USB 4.0 M.2 NVMe SSD для проверки, что было очень своевременно, поскольку у нас не было быстрого USB-накопителя для тестирования. В этом обзоре мы проверим аппаратное обеспечение, покажем, как установить твердотельный накопитель NVMe, и проверим производительность мини-ПК UP Xtreme i11, поскольку он оснащен портом USB4.
Характеристики корпуса ORICO USB 4.0 M.2 SSD и распаковка
Точная модель, которую мы получили — это ORICO M234C3-U4 с алюминиевым корпусом из розового золота (107x50x17 мм), поддерживающим твердотельные накопители M.2 M-Key и B+M Key 2230, 2242, 2260, 2280 (подробнее об этом позже) и предлагающим до 40 Гбит/с через порт USB 4.0.
Устройство поставляется с кабелем USB Type-C на USB Type-C/Type-A, термопрокладкой, радиатором, двумя винтами и многоязычным руководством пользователя.
На одном устройстве есть только один порт USB Type-C.
Установка M.2 NVMe SSD
Мы будем использовать твердотельный накопитель Apacer M.2 2280 PCIe Gen3 x4 емкостью 256 ГБ (AS2280P4), который должен поддерживать скорость чтения 1800 МБ/с и скорость записи 1100 МБ/с. 1800 МБ/с соответствуют примерно 14,4 Гбит/с, что не совсем близко к 40 Гбит/с, но все же выше, чем 10 Гбит/с для портов USB 3.1 Gen 2, поэтому посмотрим, сможем ли мы приблизиться к этим скоростям.
Наш SSD поставляется с наклейкой, и мы полагаем, что лучше снять ее перед установкой термопрокладки для еще лучшего охлаждения. Единственная проблема заключается в том, что она также служит гарантийной наклейкой (см. «Гарантия недействительна, если этикетка удалена» в левом нижнем углу). Так что мы сохранили ее. Только не забудьте снять пластиковую пленку перед установкой термопрокладки на SSD.
Следующим шагом будет закрепление радиатора поверх термопрокладки.
Мы знаем, что нужно открыть корпус, закрепленный одним винтом.
Хотя в спецификациях упоминается поддержка твердотельных накопителей M.2 2230, 2242, 2260 и 2280, для меньшего размера нет монтажных отверстий, поэтому приобретение твердотельного накопителя M.2 2280 NVMe является удачным выбором.
Теперь мы можем вставить SSD в корпус, закрепить его с помощью одной из предоставленных скоб, прежде чем вернуть крышку на место.
Корпус твердотельного накопителя ORICO USB 4.0 M.2 в Ubuntu 20.04
Вот корпус USB 4.0, подключенный к порту USB 4.0 Type-C мини-ПК UP Xtreme i11 под управлением Ubuntu 20.04. Металлический корпус довольно горячий на ощупь даже в режиме ожидания, но это хороший признак, означающий, что он охлаждает SSD.
Когда мы вставляем устройство, в журнале ядра появляется довольно длинный вывод, он заканчивается так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
[19177.462958] usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.13 [19177.462960] usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [19177.462961] usb usb5: Product: xHCI Host Controller [19177.462963] usb usb5: Manufacturer: Linux 5.13.0-48-generic xhci-hcd [19177.462964] usb usb5: SerialNumber: 0000:17:00.0 [19177.463074] hub 5-0:1.0: USB hub found [19177.463084] hub 5-0:1.0: 2 ports detected [19177.463190] usb usb6: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.13 [19177.463192] usb usb6: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [19177.463193] usb usb6: Product: xHCI Host Controller [19177.463194] usb usb6: Manufacturer: Linux 5.13.0-48-generic xhci-hcd [19177.463196] usb usb6: SerialNumber: 0000:17:00.0 [19177.463278] hub 6-0:1.0: USB hub found [19177.463286] hub 6-0:1.0: 2 ports detected [19177.473185] nvme nvme0: missing or invalid SUBNQN field. [19178.773047] nvme nvme0: allocated 64 MiB host memory buffer. [19178.784324] nvme nvme0: 8/0/0 default/read/poll queues [19184.657901] thunderbolt 0-1: new device found, vendor=0x8086 device=0x12 [19184.657909] thunderbolt 0-1: Intel USB4.0 SSD |
Есть два новых USB-концентратора (шина 0006 и 005) и твердотельный накопитель Intel USB4.0, который выглядит хорошо, но это корневые концентраторы USB 3.0 и USB 2.0.
1 2 3 4 5 6 7 8 |
$ lsusb Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 002: ID 1934:1202 Feature Integration Technology Inc. (Fintek) Fintek U2U F81532 AA66 Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub |
и действительно, когда мы смотрим на данные, используя lsusb, там нет ни порта USB 4.0, ни чего-либо на 40000M:
1 2 3 4 5 6 7 8 |
$ sudo lsusb -t /: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 10000M /: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M /: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M |__ Port 9: Dev 2, If 0, Class=Vendor Specific Class, Driver=f81534, 480M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M |
Это странно. Поэтому нам, вероятно, нужно проверить с помощью специальных инструментов Thunderbolt/usb4.0:
1 |
sudo apt install thunderbolt-tools |
Теперь мы можем получить больше информации:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
$ tbtadm devices 0-1 Intel USB4.0 SSD authorized not in ACL $ tbtadm topology Controller 0 ├─ Details: │ ├─ Name: Unknown device, Unknown vendor │ └─ Security level: SL0 (none) │ └─ USB4.0 SSD, Intel └─ Details: ├─ Route-string: 0-1 ├─ Authorized: Yes ├─ In ACL: No └─ UUID: 00166a50-7dc4-8680-ffff-ffffffffffff |
Но нет ничего о скорости, только об обнаружении устройства Thunderbolt. (Дополнительную информацию об этом можно найти в разделе комментариев). Диск SSD также определяется правильно:
1 2 3 4 5 |
$ inxi -D Drives: Local Storage: total: 357.72 GiB used: 49.11 GiB (13.7%) ID-1: /dev/nvme0n1 vendor: Apacer model: AS2280P4 256GB size: 238.47 GiB ID-2: /dev/sda vendor: Transcend model: TS128GSSD452K2 size: 119.24 GiB |
… хотя и не подключен, поэтому мы использовали pmount после изменения файла /etc/pmount.allow для устранения ошибки «устройство /dev/nvme0n1 не является съемным».
Посмотрим, какая у нас производительность с iozone:
1 2 3 4 5 6 7 8 9 10 |
devkit@UPX-i11:/media/nvme0n1$ sudo iozone -e -I -a -s 10000M -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.489 $ Compiled for 64 bit mode. Build: linux-AMD64 random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240000 16384 1115937 1114626 1155245 1154974 1155950 1115576 |
Мы повторили тест три раза с примерно одинаковыми результатами каждый раз. Все результаты, а именно последовательная запись/чтение и произвольное чтение/запись, находятся примерно в одном диапазоне около 1100 МБ/с, что может указывать на некоторую проблему. Это число также близко к 10 Гбит/с, поэтому у нас действительно может быть USB-соединение, ограниченное 10 Гбит/с, как сообщает команда lsusb -t.
Для сравнения, мы также запустили команду fio, используемую Hardkernel для тестирования производительности NVME SSD ODROID-M1 :
1 2 3 |
devkit@UPX-i11:/media/nvme0n1$ sudo fio --filename=/dev/nvme0n1 --direct=1 --rw=read --bs=1024k --ioengine=libaio --iodepth=64 --size=4G --runtime=10 --numjobs=4 --group_reporting --name=fio-rand-read-sequential --eta-newline=1 --readonly | grep READ READ: bw=1204MiB/s (1263MB/s), 1204MiB/s-1204MiB/s (1263MB/s-1263MB/s), io=12.2GiB (13.2GB), run=10417-10417msec |
1263 МБ/с примерно на 12% выше, чем скорость чтения 1128 МБ/с, полученная с помощью iozone, но все же далеко от 1800 МБ/с, рекламируемых для SSD, а 1263 МБ/с оказывается равным 10104 Мбит/с.
Похоже, что UP Xtreme i11 может быть узким местом здесь, поскольку порт usb4.0 рекламируется как имеющий возможности «usb3.10» с максимальной скоростью 10000 Мбит/с:
1 2 3 4 5 6 7 8 9 10 11 |
$ sudo lshw | grep -A10 -i usb .... -usbhost:1 product: xHCI Host Controller vendor: Linux 5.13.0-48-generic xhci-hcd physical id: 1 bus info: usb@4 logical name: usb4 version: 5.13 capabilities: usb-3.10 configuration: driver=hub slots=4 speed=10000Mbit/s |
Если мы правильно понимаем, то это нормально, что мы ограничены скоростью 10 Гбит/с. Перепроверим это с AAEON, чтобы точно убедиться.
Рассмотрим внимательнее компоненты платы
Когда мы устанавливали SSD, мы не делали полную разборку. Итак, давайте сделаем это сейчас, чтобы узнать больше об оборудовании.
На рынке представлены чип «Intel X212TC27 JHL7440», представляющий собой контроллер Intel JHL744 Thunderbolt 3, который должен поддерживать скорость 40 Гбит/с, и чип JMS583, который больше нам знаком как «USB 3.1 Gen 2 to PCIe NVMe Gen3 x2», обнаруженный в нескольких продуктах, представленных в обзорах Software CNX на протяжении многих лет… Сначала нам показалось довольно странным иметь чип 10 Гбит/с в устройстве 40 Гбит/с, но это для обратной совместимости, и если мы подключим драйвер к порту USB 3.0 нашему ноутбука, JMS583 вместо него используется чип (подробности см. в комментариях).
Рассмотренная здесь модель «USB 4.0» 40 Гбит/с стоит на Amazon 169,99 долларов, в то время как цена модели 20 Гбит/с падает до 54,99 долларов, а модель 10 Гбит/с продается всего за 29,99 долларов. Поэтому, если вы покупаете этот товар на Amazon, дважды проверьте, действительно ли ваш порт USB 4.0 поддерживает скорость 40 Гбит/с, а также скорость вашего диска, чтобы не переплачивать.
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.