Все мы постоянно слышим про линии PCI-Express. Тут их 8, там их 16. Тут PCI-Express 3.0, тут 4.0 и т.д. Но что всё это значит? И почему сейчас наличие свежего PCI Express почти так же важно как и мощный процессор или видеокарта?

Поэтому сегодня разберемся в технологии? Узнаем, что такое шина.

Сравним гигатранзакции и гигабайты. А также выясним почему PCI Express быстрее всех доставить вас до работы.

Что такое?

Для начала давайте разберемся, что такое PCI-Express и зачем он нужен?

И для этого давайте решим логическую задачку.

Перед вами 4К монитор, мощная видеокарта и быстрый SSD-диск. Что объединяет все эти устройства? Кроме того, что всё это сейчас стоит невероятных денег.

Давайте порассуждаем. Всем этим устройствам для нормальной работы нужно обмениваться данными с центральным процессором, причем в огромных объемах и на высоких скоростях. Поэтому все эти устройства могут подключаться к центральному процессору через высокоскоростную шину PCI-Express.

PCI Express (Peripheral Component Interconnect Express)

Что еще за шина и почему она высокоскоростная?

Ну смотрите, чтобы что-то с чем-то объединить внутри компьютера нам во-первых нужно физическое соединение, а во-вторых какой-то протокол, то есть правила, по которым данные будут передаваться.

Так вот и то и другое в одном флаконе – это и есть шина. А PCI-Express — одна из самых быстрых шин. Но насколько быстрая?

Вот у меня есть ноутбук, это MSI GP66 Leopard 11UH-229RU. Тут поддерживается актуальный PCIe версии 4.0.

Теоретически, если поставить сюда быстрый SSD с поддержкой PCIe 4-го поколения, то можно получить скорость 7, может даже 7,5 Гбайт/с. Представляете 7 ГБ в секунду! И такие цифры я уже видел на практике!

А так как тут есть слот под второй диск, если объединить два диска в RAID, то можно удвоить этот показатель.

Но в моей комплектации установлен не самый быстрый SSD от Kingston с памятью QLC и поддержкой только PCIe 3.0. Поэтому на нём возможности шины протестировать не получиться.

Но откуда такие скорости? Что это это за линии? И на что реально способен PCIe, об этом и поговорим.

Как работает PCIe?

Так почему же PCIe такой быстрый. В первую очередь, дело в архитектуре.

Представьте, что вам нужно доехать на машине от дома до офиса, который находится в 10 км от вас. При каких условиях дорога займет меньше всего времени? Она должна быть прямой, без ограничения скорости и желательно вообще без других машин.

Так вот, просто PCI (без express) работал похоже на обычную городскую дорожную сеть, все устройства подключались параллельно к общей шине, то есть их данные бегали по одним и тем же дорогам. Поэтому скорость работы могла варьироваться в зависимости от трафика.

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

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

Каждая такая дорога от устройства к коммутатору называется линией PCIe. И таких линий к каждому устройству можно провести несколько: 1, 2, 4, 8 или 16 в зависимости от потребностей. Потому, чем больше линий, тем больше скорость, то есть 2 линии в 2 раза быстрее, чем одна, а 16 линий в 16 раз быстрее. И никаких потерь.

Думаю, что общий принцип понятен, но теперь давайте немного углубимся и разберем как именно передаются данные.

Гигатранзакции

На скорость влияет не только архитектура, но и способ передачи данных.

На электрическом уровне каждое соединение использует низковольтную дифференциальную передачу сигнала или LVDS — low-voltage differential signaling.

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

Такой подход позволяет избежать помех во вне и передавать данные на высоких частотах при помощи дешевой медной витой пары. В общем, преимуществ масса.

Данные в компьютерных шинах передаются пакетами. Каждый пакет переданных данных называется транзакцией. Поэтому скорость передачи данных в шинах измеряется не в гигабитах или гигабайтах в секунду а в гигатранзакциях в секунду (ну или гигатрансферах, так тоже говорят). Что это такое?

Фактически транзакция в секунду, это не объём переданных данных, а частота с которой эти данные передаются. И чем эта частота выше, тем выше пропускная способность.

Тут похоже на ЦП, чем больше гигагерц, тем теоретически быстрее.

Так например например, в PCI-e 1.0 каждая линия работает с частотой 2,5 ГТ/с, то есть 2,5 миллиарда транзакций в секунду. А в версии 2.0. частота в 2 раза выше 5 ГТ/с, поэтому и пропускная способность интерфейса в 2 раза выше.

Одна линия PCIe 1.0 передавала 0,25 Гбайт/с, а 2.0 уже 0,5 Гбайт/с.

Но не только частота шины влияет на пропускную способность.

В PCIe 3.0 частота подросла с 5 ГТ/с до 8, и кажется это не много. Но при этом пропускная способность выросла практически в два раза! Как так?

Дело в том, что на скорость работы шины также влияет способ кодирования информации.

При передаче данных нам важно быть уверенными, что всё долетело в целости и сохранности. Поэтому в каждый пакет с данными добавляются специальные коды проверки целостности и прочая служебная информация, которые тоже занимают место.

Например, в первой и второй версиях PCIe на каждые 8 бит полезной информации приходилось 2 служебных бита. Такая кодировка обозначается как 8 бит поделить на 10 бит. или 8b/10b.

Это значит, что 20% пропускной способности шины тратилось на передачу служебной информации.

Начиная с 3-й версии интерфейса стали использовать кодировку 128b/130b. Это значит что на каждые 2 бита служебной информации приходится 128 бит полезной инфы. А это всего 1.5% потерь. Поэтому, несмотря на не сильно подросшие частоты с 5 до 8 Гигатрансферах, в третьей версии PCIe пропускная способность увеличилась практически в 2 раза.

Кстати, если хотите точно рассчитать пропускную способность каждой версии PCIe вы можете сделать это по вот такой формуле. Ну, либо просто загляните в табличку на википедии.

Формула расчета пропускной способности PCIe:

  • BW (МБ/с) = FR (МТ/с) * EN * 1B/8b
  • BW – искомая скорость передачи в МБ/с
  • FR – частота шины в ГТ/с
  • EN – тип кодирования
  • Пример, для PCIe 2.0:
  • BW = 5000 * 8/10 * 1/8 = 5000 * 0.8 * 0.125
  • BW = 500 МБ/с

Зачем нужен PCIe 4.0?

На текущий момент актуальна версия PCI Express 4.0. В отличие от прошлой версии 3.0, новая шина в 2 раза быстрее, частота передачи данных по шине тут достигает 16 миллиардов пересылок в секунду. А пропускная способность одной линии тут достигать почти 2 ГБ/с (1969 Мбайт/с). И целых 31,5 Гбайт/с для 16 линий!

Вы только представьте – 31 ГБ в секунду!!! Но зачем это нужно и вообще как влияет на производительность?

Ну смотрите, 3-е поколение шины появилось аж в 2010 году и до сих пор почти везде используется. А 4-е поколение было готово еще в 2017 году, но только щас начинает становиться мейнстримом.

Всё так медленно развивается потому, что до текущего момента было очень мало задач, для которых были бы нужны такие скорости передачи данных. То есть обновляться раньше не было смысла.

Но теперь появились доступные и супер быстрые SSD-диски, которым мало стандартных 4х линий PCI 3.0 со скоростью 3,9 ГБ/с. А также появились мощные видеокарты и мониторы с высоким разрешением, которым тоже нужна серьезно пропускная способность.

Поэтому в первую очередь PCI-e 4.0 нужен для современных игр и поддержки технологии DirectStorage от Майкрософт.

Если вы хотите, чтобы игры быстро загружались, быстро подгружались текстуры и были в высоком фотореалистичном разрешением, а переходы в другие уровни и смены локаций были бесшовными, быстрый SSD и PCIe 4.0 просто необходим.

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

Во-вторых, если у вас несколько 4К и 5К мониторов с которыми вы одновременно работаете, наличие PCI Express 4-й версии тоже может стать необходимостью. Но это уже более профессиональные кейсы и тут люди сами знают, что им нужно.

Как влияет на производительность?

Окей, перейдём к практике и нашем тестовому ноутбуку MSI GP66 Leopard

MSI GP66 Leopard 11UH-229RU

  • Процессор Intel Core i7-11800H
  • Оперативная память 16 (2×8) ГБ DDR4-3200
  • Видеоподсистема Nvidia GeForce RTX 3080
  • Экран 15,6, 1920×1080, 144 Гц, IPS
  • Накопитель SSD 512 ГБ + свободный слот M.2 2280
  • Батарея 65 Вт·ч
  • Габариты 358×271×34 мм (максимум, измерено нами)
  • Масса без блока питания 2,32 кг (измерено нами)

Сильные стороны этого ноутбука: мощный процессор Intel 11-го поколения 11800H, к которому походят 20 линий PCIe 4.0, что позволит лучше раскрыть видеокарту Nvidia RTX 3080.
Плюс в ноутбуке довольно толстый корпус и фирменная система охлаждения CoolerBoost 5. А также прекрасный IPS дисплей от LG с частотой обновления 144 Гц.

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

Этот ноутбук не позиционируется как игровой, типа это ноут для вычислений. Но судя по характеристикам, а также RGB подсветке клавиатуры. Мы кажется поняли какие именно вычисления вы имеете ввиду MSI, поэтому запустил на нём Cyberpunk 2077.

И ноутбук проявил себя в игровом тесте великолепно. В Cyberpunk 2077 я выставил ультра настройки а в ноуте режим экстремальной производительности.

Также посмотрите результаты тестов в других играх в сравнении с конкурентами:

(Источник ixbt.com)

Насколько сильно повлияло наличие PCI Express 4.0 на эти результаты сказать сложно. Но интерфейс точно не был бутылочным горлышком, и полностью его потенциал может раскрыться в будущем, когда в Windows появится поддержка технологии DirectStorage и если поставить новый SSD.

В остальном, ноутбук очень хорош для ресурсоемких вычислений и просто идеален для игр.

Чего ждать в будущем?

Чего же нам ждать в будущем? Нас ждёт PCI Express 5.0 и 6.0, каждый из которых в два раза быстрее своего предшественника.

Спецификация 5-го поколения была финализирована еще в 2019 году, а первые процессоры с поддержкой новой шины появился в продаже уже очень скоро в ноябре 2021 года, это будут процессоры Intel 12-го поколения Alder Lake.

Потребности в скоростях 5-го поколения шины пока нет. Почти всем вполне хватит 4-й версии еще на долгие годы. Разве что теперь те же скорости будут доступны при вдвое меньшем количестве линий, что позволит сэкономить немного места.

Что же касается 6-го поколения. Спецификацию должны были утвердить в этом году, но перенесли на 22-й, а появление первых девайсов раньше 25-го года можно не ждать.

Но что можно точно сказать, что в этом году время PCIe 3.0, который прослужил нам больше 10 лет уже точно сочтено. Поэтому если уж брать комп или ноутбук, то минимум с 4-й версией.