Кому и зачем нужна шина PCIe Gen4

30 март, 2020 - 16:04Михаил Закусило

Шина PCI express четвертого поколения дебютировала на материнских платах под процессоры AMD: EPYC, Ryzen, Ryzen Threadripper. Дело за устройствами.

AMD вышла в лидеры высокой процессорной моды благодаря ядерному потенциалу. Ее основной конкурент отстает не только по техпроцессу и плотности ядер на процессорное гнездо. У Intel нет поддержки шины PCI Express 4.0 (PCIe Gen 4). А у AMD есть, всем семейством CPU на микроархитектуре Zen 2. В серверах это AMD EPYC Rome, в производительных рабочих станциях и ПК — Ryzen и Ryzen Threadripper 3000-й серии.

Стандарт PCIe Gen 4 принят в 2017-м году, первые продукты появились меньше года назад. У новой шины вдвое больше, чем раньше, пропускная способность. Двукратное увеличение достигнуто ростом частоты передачи данных с сохранением схемы кодирования сигнала. Между новым и старым стандартами есть прямая и обратная совместимость. Устройства с поддержкой разных версий PCIe могут работать друг с другом — равняясь по «отстающему».

Кому и зачем и нужна шина PCIe Gen4

Шина, процессоры и чипсеты уже есть, дело за выгодополучателями — периферийными устройствами: сетевого и дискового ввода/вывода, графическими ускорителями. Поддерживают PCIe Gen 4 (с рядом оговорок) лишь избранные видеокарты семейства AMD Radeon RX 5×00 и RX 5500, все продукты NVidia обходятся PCIe Gen 3. Пропускной способности старой шины хватает и сетевым картам, вплоть до 100Gb Ethernet.

Остаются NVMe SSD. С их подключением по четырем линиям x4 PCIe они действительно подошли к пределу пропускной способности Gen 3. Новый стандарт поднимает планку вдвое, с 3.9 до 7.9 Гбайт/с. Эх, если бы только ширина внешнего тракта определяла возможности твердотельного накопителя. У него есть ограничения внутренней архитектуры и флеш-памяти.

SSD с поддержкой PCIe Gen 4 пока немного. Kioxia (ex-Toshiba) заявила два семейства CD6 и CM6 для серверов и систем хранения, в формате U.3 (2.5″ NVMe). У Samsung есть линейка PM1735 — карт половинной высоты в слот x8. Все известные на этот момент накопители M.2 NVMe PCIe Gen 4 для массового рынка собраны на контроллере PS5016-E16 независимого тайваньского разработчика Phison — как и Seagate Firecuda 520. Благодаря содействию украинского представительства Seagate, к нам на тесты попали два таких накопителя. О первых впечатлениях от этой модели чуть ниже.

Куда cтавить M.2 SSD PCIe Gen 4?

Первой реализаций нового стандарта шины в ПК стали системы под AMD Ryzen 3000 на наборе логики AMD X570. К 24 линиям PCIe Gen 4 от CPU (16 доступны устройствам) чипсет добавляет 16 своих (8 из них PCIe Gen 4). В принципе, возможны материнские платы на AMD X570 c четырьмя слотами M.2x4 NVMe под PCIe Gen 4 SSD.

Кому и зачем и нужна шина PCIe Gen4

Кому и зачем и нужна шина PCIe Gen4

В процессорном гнезде АМ4 под Ryzen работает уже четвертое поколение CPU, за это время число их ядер выросло с 4 до 16. Но, коль скоро микроархитектура Zen способна на большее, появилось и выросло семейство процессоров AMD Ryzen Threadripper под настольные приложения с повышенными требованиями к вычислительным ресурсам — как рендеринг или кодирование видео.

Под Threadripper 3000 на Zen 2 был создан набор логики TRX40. Чтобы выжать максимум из процессоров, AMD вчетверо расширила полосу передачи данных между CPU и чипсетом — с x4 PCIe Gen 4 до x8 PCIe Gen 4. В предыдущем поколении 32-ядерные процессоры Threadripper уже были. В новом к ним прибавились 64-ядерные и открылись горизонты работы с периферией.

Теперь Threadripper обслуживает напрямую 64 линии PCIe Gen4. Чипсет добавляет еще 24. Отнимая 8 под связь CPU с набором логики, получаем 72 линии PCIe Gen 4, доступных пользователю.

Кому и зачем и нужна шина PCIe Gen4

Кому и зачем и нужна шина PCIe Gen4

Что показали тесты

Тестовый стенд был собран на процессоре AMD Ryzen Threadriper 3970X, материнской плате ASUS Prime TRX40 Pro, c 64GB памяти Kingston DDR4-3200. Два SSD Seagate Firecuda 520 емкостью 1TB были установлены в разъемы M.2x4 PCIe Gen4, которые на плате прикрыты металлическим «капотом».

Кому и зачем и нужна шина PCIe Gen4

Тест NIOBench работает с небольшими объемами данных, подавляя участие спекулятивных механизмов операционной системы минимально. Результаты едва переваливают барьер производительности, установленный предшественницей — шиной Gen 3.

Кому и зачем и нужна шина PCIe Gen4

Кому и зачем и нужна шина PCIe Gen4

Нижняя планка лучшего результата предсказуемо ограничена возможностями DRAM-буфера Firecuda 520. Драйверы ОС с механизмами отложенной записи и упреждающего поднимут планку пиковой производительности до 8GBps, но мы же понимаем: операции с системным ОЗУ подменяют операции с диском — как это и должно быть при разрешенном кэшировании.

Буфер динамической памяти призван улучшать свойства NVMe SSD. Его вклад вряд ли значим — не самая быстрая комбинация двух 8-битных микросхем DRAM обслуживает весьма производительную NAND-матрицу по 16-битной шине. Чтобы «избавиться» от его влияния наверняка, выберем тестовый сценарий агрессивной записи 400МБ-файлами. Заодно 1000 таких «бомбометаний» должны дать ответ и на второй по значимости вопрос: какова структура NAND-матрицы?

Кто следит за конкурсами красоты SSD, наверняка знают, что в погоне за производительностью контроллеры SSD учат переопределять уровни ячеек в запоминающей матрице. Используя два из восьми состояний TLC как это происходит в ячейке SLC, контроллер демонстрирует высокие скоростные показатели. Ценой кратного уменьшения объема, конечно же. Когда такой SLC-кэш переполняется, заканчивается время рекордов.

Тесты с одинаковыми установками на двух образцах Seagate Firecuda 520 начинаются в бодром темпе: около 4,4GBps на чтении и 4,3GBps в записи, что близко к обещанным заводским 5,0/4,4GBps. Внезапный срыв производительности обусловлен исчерпанием SLC-ячеек.

Кому и зачем и нужна шина PCIe Gen4

Трафик с TLC демонстрирует некоторое снижение скорости чтения и катастрофический провал по записи — 0,9GBPS. Реальный пользователь вряд ли будет оперировать такими огромными непрерывными данными. По этой причине он не ощутит снижения производительности — в TLC будут храниться информация, «холодная» с точки зрения контроллера Phison PS5016-E16.

Кому и зачем и нужна шина PCIe Gen4

Полученные результаты говорят о том, что от 30% до 40% емкости накопителя используется под SLC-кэш, который легко мутирует в TLC-ячейки (а если нужно, то и реконфигурируется назад в SLC). Гребенка на 901-й итерации (в правом нижнем углу последнего графика), похоже, демонстрирует именно процесс таких преобразований.

Разброс параметров Seagate Firecuda 520 — результат внедрения адаптивных алгоритмов в логику работы твердотельных накопителей. К обещаниям производителя следует относиться с осторожностью. Полностью они оправдываются в определенном коридоре, но предыстория хранения может оказать существенное влияние на скоростные характеристики.

Текущим положением дел не могут быть удовлетворены и сами производители NVMe-накопителей. Повсеместная готовность платформ с PCIe Gen4, пусть даже пока только с процессорами и системной логикой от AMD, ставит перед ними совсем иные требования к производительности. Ходят слухи, что уже концу года Phison представит новую, улучшенную версию управляющего контроллера. За Phison, очевидно, подтянутся и другие.

Будущие рекорды SSD NVMe Gen4 еще впереди.