Как узнать скорость pci express
Все мы постоянно слышим про линии 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-й версии тоже может стать необходимостью. Но это уже более профессиональные кейсы и тут люди сами знают, что им нужно.
PCI Express (PCIe, PCI ex) – это последовательная компьютерная шина, которая пришла на замену устаревающим PCI и AGP. Сейчас PCI Express является основным способом подключения комплектующих к компьютеру. С ее помощью подключаются твердотельные накопители (SSD), видеокарты, звуковые карты, платы расширения и т. д.
PCI Express появилась в 2002 году и с тех пор вышло уже 4 ее версии (PCI Express 1.0, 2.0, 3.0 и 4.0), а в ближайшем будущем появится и 5-я версия (PCI Express 5.0). Все эти версии обладают полной совместимостью, что позволяет устанавливать новые устройства в старые платы и наоборот. Тем не менее, в некоторых случаях все-таки необходимо знать, какая версия PCI Express используется на материнской плате. Об этом мы и расскажем в данной статье.
Версия PCI Express в характеристиках материнской платы
Если вам нужно узнать какая версия PCI Express используется на вашей материнской плате, то проще всего получить эту информацию из технических характеристик самой платы.
Чтобы найти характеристики платы вам потребуется знать точное название ее модели. Узнать название модели можно из стандартной утилиты « Сведения о системе », которая входит в состав операционной системы Windows. Для этого нажмите комбинацию клавиш Win-R и выполните команду « msinfo32 ». В открывшемся окне, в разделе «Сведения о системе», будет указана модель основной платы. Это и есть название вашей материнской платы.
Дальше вам нужно ввести название материнской платы в любую поисковую систему (например, в Google) и перейти на страницу данной платы на официальном сайте ее производителя.
На странице материнской платы нужно найти раздел « Характеристики » или « Спецификации ».
Здесь будут описаны все основные характеристики платы. Среди прочего здесь будет указана и версия PCI Express. В данном случае на скриншоте видно, что плата оснащена разъемом PCI Express 3.0.
Как видно, если есть название материнской платы, то узнать версию PCI Express не составляет труда.
Версия PCI Express в программе HWiNFO64
Если описанный выше способ вызывает у вас какие-то трудности, то вы можете воспользоваться альтернативным вариантом. Вы можете посмотреть версию PCI Express в бесплатной программе HWiNFO64. Данная программа предназначена для просмотра технических характеристик компьютера. Среди прочего в ней можно посмотреть и версию PCI Express, которую поддерживает материнская плата.
Для этого нужно скачать HWiNFO64 с официального сайта и запустить на своем компьютере. После этого нужно открыть раздел « Motherboard » и найти строку « PCI Express Version Supported ». Здесь будет указана нужная вам информация.
Версия PCI Express в программе GPU-Z
На некоторых сайтах рекомендуют смотреть версию PCI Express в программе GPU-Z. Но, этот способ не совсем корректный и во многих случаях дает неверный результат.
Проблема в том, что GPU-Z это программа для просмотра технических характеристик установленной на компьютере видеокарты. И показывает она информацию исключительно о видеокарте, а не о материнской плате. Поэтому, версия PCI Express, которая указывается в GPU-Z это версия, которую поддерживает видеокарта, а не материнская плата.
В этом можно убедиться, если навести курсор на указанную информацию и дождаться появления подсказки.
Начну издалека. Прошлой зимой довелось мне делать USB-устройство с ядром, размещаемым в ПЛИС. Само собой, очень мне хотелось проверить реальную пропускную способность этой шины. Ведь в контроллере — там слишком много всего наверчено. Всегда можно сказать, что вот тут внесена задержка, или вон там. В случае же с ПЛИС — я вижу блок, прокачивающий данные, вот он сказал мне, что в нём данные есть. А вот я выставил, что всё обработано, и я готов принимать новую порцию (при этом, он уже принимает данные во второй буфер этой же конечной точки). Отлично, ставим готовность с первого же такта и смотрим, что получается, когда USB может «молотить» без остановки.
А получается удивительная вещь. Если USB 2.0 устройство воткнуто в «голубенький» разъём (это который USB 3.0), то скорость получается одна. Если в «чёрненький» — другая. Вот мой график зависимости скорости записи в USB от длины передаваемых данных. USB3 и USB2 — это тип разъёма, устройство всегда USB 2.0 HS.
Я пробовал в разных машинах. Результат — близок. Никто не мог объяснить мне этот феномен. Уже потом я нашёл наиболее вероятную причину. А причина очень проста. Вот свойства контроллера USB 2.0:
У контроллеров, управляющих «голубеньким» разъёмом такого нет. А разница — как раз примерно процентов 20.
Из этого мы делаем вывод, что не всегда ограничения пропускной способности определяются физическими свойствами шины. Иногда накладываются ещё какие-то вещи. Переходим с этими знаниями в наши дни.
Первичный эксперимент
Итак. Всё начиналось весьма буднично. Шла проверка одной программы. Проверялся процесс записи данных одновременно на несколько дисков. Аппаратура простая: имеется материнская плата с четырьмя PCIe-слотами. Во все слоты воткнуты совершенно одинаковые карточки с AHCI-контроллерами, каждый из которых поддерживает исключительно PCIe x1.
Каждая карта обслуживает 4 накопителя.
И вот выясняется следующий эффект. Берём один диск и начинаем записывать на него данные. Получаем скорость от 180 до 220 мегабайт в секунду (здесь и далее, мегабайт — это 1024*1024 байт):
Берём второй накопитель. Скорость записи на него — от 170 до 190 МБ/с:
Пишем сразу на оба — получаем просадку скорости:
Суммарная скорость получается в районе 290 МБ/с. Но удивительность состоит в том, что отлаживали (так получилось) эту программу мы на тех же накопителях, но на других каналах. И там всё было хорошо. Быстро перетыкаем в те каналы (они будут идти через другую карту), получаем прекрасную работу:
Куплю слот в хорошем районе
Сразу скажу, что винить во всём какие-то чужие компоненты не стоит. Здесь всё написано нами, начиная от самой программы, заканчивая драйверами. Так что весь путь прохождения данных может быть проконтролирован. Неизвестность наступает только когда запрос ушёл в аппаратуру.
После первичного разбора выяснилось, что скорость не ограничивается в «длинных» слотах PCIe и ограничивается в «коротких». Длинные — это куда можно вставить карты x16 (правда, один из них работает в режиме не выше x4), а короткие — только для карт x1.
Всё бы ничего, но контроллеры в текущих картах в принципе не могут работать в режиме, отличном от PCIex1. То есть, все контроллеры должны быть в абсолютно идентичных условиях, независимо от длины слота! Ан нет. Кто живёт в «длинном» — работает быстро, кто в «коротком» — медленно. Хорошо. А быстро — насколько быстро? Добавляем третий накопитель, пишем на все три.
В «коротких» слотах ограничение всё ещё в районе 290 МБ/с:
В «длинных» — в районе 400 МБ/с:
Я перерыл весь Интернет. Во-первых, через некоторое время я уже смеялся со статей, где говорится о том, что пропускная способность PCIe gen 1 и gen 2 для x1 составляет 250 и 500 МБ/с. Это «сырые» мегабайты. За счёт оверхеда (я использую это нерусское слово, чтобы обозначить служебный обмен, идущий по тем же линиям, что и основные данные) для gen 2 получается именно 400 мегабайт в секунду полезного потока. Во-вторых, я упорно не мог найти ничего про магическую цифру 290 (забегая вперёд — до сих пор не нашёл).
Отлично. Пытаемся глянуть на топологию включения наших контроллеров. Вот она (013-015 — это суффиксы имён устройств, по которым я сопоставил их, чтобы как-то различать). Зелёные —быстрые, красные — медленные.
Контроллер «015» мы даже не рассматриваем. Он живёт в привилегированном слоте, предназначенном для видеокарты. Но 013-й подключён к тому же коммутатору, что и 012-й с 014-м. Чем он отличается?
Отдельные статьи говорят, что разные карты могут отличаться параметрами Max Payload. Я изучил конфигурационное пространство всех карт — этот параметр стоит у всех в одном и том же, минимально возможном значении. Мало того, в документации на чипсет этой материнки сказано, что иного значения и быть не может.
В общем, я перерыл всё в конфигурационном пространстве — всё настроено идентично. А скорость разная! Многократно перечитал документацию на чипсет — никаких настроек пропускной способности. Приоритеты — да, что-то про них написано, но тесты же ведутся при полном отсутствии нагрузки по другим каналам! То есть дело не в них.
На всякий случай, я даже отключил работу программы по прерываниям. Нагрузка на процессор возросла до безумных величин, ведь теперь он постоянно тупо читает бит готовности, но показания скорости не изменились. Так что обвинить в проблемах эту подсистему тоже нельзя.
А что там у других плат?
Попробовали поменять материнскую плату на точно такую же. Никаких изменений. Попробовали заменить процессор (были основания считать, что он барахлит). Тоже никаких изменений скорости (но старый процессор и правда барахлил). Поставили материнскую плату более нового поколения — всё просто летает на всех слотах. Причём предельная скорость уже не 400, а 418 мегабайт в секунду, хоть в «длинных», хоть в «коротких» слотах:
Но здесь — никаких чудес. Привычным движением руки (за эти дни уже привык) считываем конфигурационное пространство и видим, что параметр Max Payload установлен не на 128, а на 256 байт.
Больше размер пакета — меньше количество пакетов. Меньше оверхед на их пересылку — больше полезных данных успевает пробежать за то же время. Всё верно.
Так кто же виноват?
Точного ответа на вопрос из заголовка, со ссылкой на документы, я не дам. Но мысль моя пошла по следующему пути: допустим, что ограничение потока задано внутри чипсета. Его нельзя программировать, оно задано намертво, но оно есть. Например, оно равно 290 мегабайт в секунду на каждую дифф. пару. Больше — режется уже где-то внутри чипсета на его внутренних механизмах. Поэтому в «длинном» слоте (куда можно воткнуть карты вплоть до x4) внутри чипсета для нашей карты ничего не режется, а мы упираемся в физический предел шины x1. В «коротком» же разъёме мы упираемся в это ограничение.
На самом деле, проверить это не просто, а очень просто. Втыкаем в 013-й слот не AHCI, а SAS-контроллер, который обслуживает сразу 8 накопителей и может работать в режимах PCIe вплоть до x4. Подключаем ему 4 шустрых SSD накопителя. Смотрим скорость записи — аж душа радуется:
Теперь добавляем те 4 диска, которые фигурировали в первых тестах. Скорость работы SSD предсказуемо просела:
Вычисляем суммарную скорость, проходящую через SAS-контроллер, получаем 1175 мегабайт в секунду. Делим на 4 (столько линий идёт в «длинный» слот), получаем… Барабанная дробь… 293 мегабайта в секунду. Где-то я это число уже видел!
Итак, в рамках данного проекта было доказано, что дело не в нашей программе или драйвере, а в странных ограничениях чипсета, которые наверняка «зашиты» намертво. Была выведена методика подбора материнских плат, которые могут быть использованы в проекте. А в целом, выводы делаем следующие.
Все, что вам нужно знать о современных возможностях PCI Express и пропускной способности Thunderbolt и ограничениях при создании вашего следующего ПК.
Настало время продолжить наш сцинтилляционный взгляд на интерфейсы и ограничения на пропускную способность.М ы обратили внимание на PCI Express и Thunderbolt.
Во-первых, PCI Express: что именно это означает, когда у вас есть соединение PCIe 2.0 x8? И имеет ли значение, является ли ваше соединение x8 или x16?
PCI Express
Интерфейс PCI Express немного запутан. Соединение PCIe состоит из одной или нескольких полос передачи данных, соединенных последовательно. Каждая полоса состоит из двух пар проводников, одна для приема и одна для передачи. У вас может быть один, четыре, восемь или шестнадцать дорожек в одном слоте PCIe для потребителя - обозначены как x1, x4, x8 или x16. Каждая полоса является независимым соединением между контроллером PCI и картой расширения, а линейная ширина полосы линейно, поэтому восьмиполосное соединение будет иметь вдвое большую пропускную способность четырехполосного соединения. Это помогает избежать узких мест между, скажем, процессором и графической картой. Если вам нужна большая пропускная способность, просто используйте больше дорожек.
Существует несколько разных физических соединений, каждый из которых может функционировать электрически как слот с меньшим количеством полос движения и может также вмещать физически меньшую карту. В физическом слоте PCIe x16 можно разместить карту x1, x4, x8 или x16 и выполнить запуск x16-карты по x16, x8, x4 или x1. Слот PCIe x4 может вмещать карту x1 или x4, но не может соответствовать карте x16. И, наконец, существует несколько различных версий интерфейса PCIe, каждый из которых имеет разные ограничения пропускной способности, а многие современные материнские платы имеют слоты PCIe различного физического размера, а также разные поколения PCIe.
Начнем с максимальной теоретической пропускной способности. Одна линия PCIe 1.0 (или 1.1) может переносить до 2,5 Гбит / с в секунду (GT / s) в каждом направлении одновременно. Для PCIe 2.0, который увеличивается до 5 Гбит / с, а одна линия PCIe 3.0 может нести 8 Гбит / с.
Гигатрансферы в секунду - это то же самое (в данном случае) как гигабиты в секунду . Все версии PCI Express теряют часть своей теоретической максимальной пропускную способность для физических расходов, связанных с электронными передачами. PCIe 1. * и 2.0 используют кодирование 8b / 10b (например, SATA), результатом чего является то, что каждые 8 бит данных стоят 10 бит для передачи, поэтому они теряют 20 процентов своей теоретической пропускной способности . Это просто затраты на ведение бизнеса.
Максимальная скорость передачи данных на PCI-1.0 составляет восемьдесят процентов от 2,5 Гбит / с. Это дает нам два гигабит в секунду, или 250 Мбайт / с (помните, восемь бит в байт). Интерфейс PCIe является двунаправленным, так что это 250 Мбайт / с в каждом направлении, на дорожку. PCIe 2.0 удваивает пропускную способность на одну полосу до 5 Гбит / с, что дает нам 500 МБ / с фактической передачи данных на полосу.
Интерфейс PCIe 3.0 имеет удвоеную скорость передачи данных по сравнению PCI 2.0.
И так мы знаем, что PCIe 3.0 вдвое превышает скорость PCI 2.0, но, как мы видели выше, теоретическая пропускная способность каждой полосы составляет 8 Гбит / с, что на 60 процентов больше, чем 5GT / s PCIe 2.0. Это потому, что PCIe 3.0 и выше используют более эффективную схему кодирования под названием 128b / 130b , поэтому потребление ресурсов намного меньше - всего 1,54 процента. Это означает, что один слот PCIe 3.0 с пропускной способностью 8 Гбит / с может отправлять 985 МБ / с. Это не совсем вдвое 500 Мбайт / с, но это достаточно близко для маркетинговых целей.
Это означает, что соединение PCIe 3.0 x4 (3,94 ГБ / с) имеет почти такую же пропускную способность, как PCIe 1.1 x16 или PCIe 2.0 x8 (оба 4 ГБ / с).
Современные графические процессоры используют интерфейс x16 PCIe 2.0 или 3.0. Это не значит, что они всегда работают со скоростью x16. На многих материнских платах имеется несколько физических слотов x16, но имеется меньшее количество реальных полос PCIe.
И так ,у нас на примере на рабочем столе Z87 (Haswell) или Z77 (Ivy Bridge) процессор имеет 16 линий PCIe 3.0 . На чипсетах Intel есть еще восемь дорожек PCIe 2.0, но они обычно используются для звуковых карт, RAID-карт и т. Д. (Чипсет AMD 990FX включает в себя 32 полосы PCIe 2.0 и четыре на северном мосту). В приведенной выше плате Asus слоты PCIe 3.0 являются полосами ЦП, в то время как всем остальным приходится делиться восемью чипсетами PCIe 2.0. Использование слота PCIe 2.0 x16 в режиме x4 отключает три слота PCIe 2.0 x1.
Таким образом, одна видеокарта x16 будет использовать все 16 PCI-дорожек с процессором PCI, но добавление графического процессора во вторую полосу x16 приведет к отключению обоих подключений видеокарт до восьми полос . Добавление третьего графического процессора приведет к отключению подключеной первой карты к x8, а к подключению второй и третьей карт - к x4.
Вот почему многие люди, которые запускают установки с несколькими GPU, предпочитают архитектуры энтузиастов Intel, такие как Sandy Bridge-E и Ivy Bridge-E так как некоторые Процессоры с технологией Ivy Bridge-E имеют возможность до сорока полос в PCIe 3.0 . Этого достаточно, чтобы запустить две карты по x16 и одну на x8, одну карту на x16 и три карты на x8 или одну на x16, две на x8 и еще две на x4.
Это важно для производительности?
Два графических процессора PCIe 3.0, работающие на x8 каждый на материнской плате PCIe 3.0, имеют примерно такую же пропускную способность, что и два графических процессора PCIe 2.0, работающих на x16 - первый набор работает со скоростью 7,88 ГБ / с каждый, а второй второй работает со скоростью 8 ГБ / с. Если ваша материнская плата или видеокарта ограничена подключением PCIe 2.0, вы будете зависать из за более медленного интерфейса.
TechPowerUp продемонстрировал огромный объем производительности PCIe. В то время они тестировали две мощные карты с одним GPU - AMD Radeon HD 7970 и Nvidia GeForce GTX 680 - на x4, x8 и x16 с использованием PCIe 1.1, 2.0 и 3.0, все на одной материнской плате. Это, безусловно, лучший тест, который я когда-либо видел на масштабировании полосы пропускания PCIe. Н а странице сводки производительности собраны относительные результаты с первого взгляда.
Как и следовало ожидать, эквивалентные конфигурации пропускной способности работают примерно одинаково. Цитируем авторов TechPowerUp : «Наше тестирование подтверждает, что современные графические карты отлично работают при меньшей скорости шины, однако производительность ухудшает скорость работы шины. Все вплоть до x16 1.1 и его эквивалентов (x8 2.0, x4 3.0) обеспечивает достаточную игровую производительность даже при использовании новейшего графического оборудования, теряя всего лишь 5% в среднем в худшем случае. [выделено мной] Только на более низких скоростях мы видим резкие потери частоты кадров, что оправдывало бы действие ».
Самая интересная часть этих результатов - это вывод о том, что самые мощные графические карты прошлого года отлично работают на PCIe 2.0 x8 или даже PCIe 3.0 x4. Это означает, что трехсторонний SLI или CrossFireX должен быть жизнеспособным, даже в x8 / x4 / x4, на Ivy Bridge или рабочих столах Haswell . Но даже если у вас нет PCIe 3.0, вы не пропустите большую производительность на x8 на подключении PCIe 2.0.
Двойная пропускная способность PCIe 3.0 x16 по сравнению с PCIe 2.0, похоже, пока не имеет большого значения. Ryan Smith от AnandTech протестировал две Nvidia GeForce GTX Titans - самые быстрые карты с одним GPU в SLI на PCIe 3.0 и 2.0 и в лучшем случае обеспечила улучшение производительност и на 57 % по сравнению с 5760 x 1200.
Так что это хорошая новость для людей со старыми материнскими платами или видеокартами. Если у вас есть хотя бы PCI Express 2.0 x8, вы вряд ли оставите какую-либо надежду на производительность , даже на самых быстрых картах.
Интерфейс Thunderbolt
Thunderbolt - это интерфейс передачи данных, который может проходить через сигналы PCI Express и DisplayPort в зависимости от того, к чему он подключен. Контроллер Thunderbolt состоит из двух двунаправленных каналов данных, причем каждый канал содержит вход и выходную полосу.
Микросхемы Thunderbolt на каждом конце кабеля используются как в DisplayPort 1.1a, как и в четырехполосной шине PCIe 2.0. Каждый канал независим и может либо переносить DisplayPort, либо PCIe, но не оба. Каждое направление в каждом канале имеет теоретическую максимальную пропускную способность 10 Гбит / с - то же, что и две полосы PCIe 2.0. Как обсуждалось выше, из-за кодирования 8b / 10b то 20 процентов теоретического предела PCI Express 2.0 посвящено служебным нагрузкам сигнала, поэтому максимальная теоретическая пропускная способность одного канала Thunderbolt составляет 1 ГБ / с в каждом направлении.
В Thunderbolt для первого поколения это так же быстро на сколько это возможно, поскольку каждое устройство может получить доступ только к одному из двух каналов, и вы не можете их комбинировать. Передача данных происходит довольно быстро, так как вы можете отправлять видео высокого разрешения на монитор DisplayPort со скоростью 10 Гбит / с по одному каналу, одновременно считывая 1 ГБ / с с SSD RAID .
Итак, сколько производительности вы можете вытащить из соединения Thunderbolt?
В пример: Gordon Ung at Maximum PC записывает максимальную скорость чтения 931 МБ / с при чтении с RAID 0 четырех SSD SandForce SF-2281 на 240 ГБ в шасси Pegasus R4.
Четырехпотоковый RAID 0 SSD будет довольно быстрым для соединения Thunderbolt первого поколения. Двухдисковый RAID 0 может приближаться к скорости отдельных дисков , хороший SSD с пропускной способностью 6 Гбит / с может достигать 515 Мбайт / с. RAID 0 из двух 6 Гбит / с SSD может легко насытить соединение 10 Гбит / с, доступное в Thunderbolt первого поколения.
Очень короткая заметка о производительности PCIe SSD (по сравнению с Thunderbolt)
Несмотря на ограничения в Thunderbolt первого поколения, он по-прежнему намного лучше внешнего интерфейса для хранения данных, чем USB 3.0.
Жёсткий SSD диск OCZ RevoDrive 3 x2, подключенный к PCIe SSD, может достигать максимума 1,5 ГБ / с в некоторых последовательных тестах чтения на PCIe 2.0 x4-соединении. Этот диск использует контроллер SAS-PCIe, а не контроллер SATA для RAID-карты для подключения PCIe, но, безусловно, это не может объяснить всю разницу в скорости. В конце концов, Thunderbolt - это соединение PCIe 2.0 x4, верно?
Следующая версия Thunderbolt
Следующая версия Thunderbolt, искусно названная Thunderbolt 2, позволит вам объединить оба канала в один, с теоретическим максимумом 20 Гбит / с (2 ГБ / с, после кодирования), позволяя устройствам использовать все четыре полосы PCIe 2.0 в соединении Thunderbolt , Это также увеличивает пропускную способность на стороне дисплея; вы сможете транслировать 4K-видео на этот фантастический монитор 4K, который у вас есть. Пока Thunderbolt 2 доступен только на нескольких материнских платах от Asus
Все, что вам нужно знать о современных возможностях PCI Express и пропускной способности Thunderbolt и ограничениях при создании вашего следующего ПК.
Настало время продолжить наш сцинтилляционный взгляд на интерфейсы и ограничения на пропускную способность.М ы обратили внимание на PCI Express и Thunderbolt.
Во-первых, PCI Express: что именно это означает, когда у вас есть соединение PCIe 2.0 x8? И имеет ли значение, является ли ваше соединение x8 или x16?
PCI Express
Интерфейс PCI Express немного запутан. Соединение PCIe состоит из одной или нескольких полос передачи данных, соединенных последовательно. Каждая полоса состоит из двух пар проводников, одна для приема и одна для передачи. У вас может быть один, четыре, восемь или шестнадцать дорожек в одном слоте PCIe для потребителя - обозначены как x1, x4, x8 или x16. Каждая полоса является независимым соединением между контроллером PCI и картой расширения, а линейная ширина полосы линейно, поэтому восьмиполосное соединение будет иметь вдвое большую пропускную способность четырехполосного соединения. Это помогает избежать узких мест между, скажем, процессором и графической картой. Если вам нужна большая пропускная способность, просто используйте больше дорожек.
Существует несколько разных физических соединений, каждый из которых может функционировать электрически как слот с меньшим количеством полос движения и может также вмещать физически меньшую карту. В физическом слоте PCIe x16 можно разместить карту x1, x4, x8 или x16 и выполнить запуск x16-карты по x16, x8, x4 или x1. Слот PCIe x4 может вмещать карту x1 или x4, но не может соответствовать карте x16. И, наконец, существует несколько различных версий интерфейса PCIe, каждый из которых имеет разные ограничения пропускной способности, а многие современные материнские платы имеют слоты PCIe различного физического размера, а также разные поколения PCIe.
Начнем с максимальной теоретической пропускной способности. Одна линия PCIe 1.0 (или 1.1) может переносить до 2,5 Гбит / с в секунду (GT / s) в каждом направлении одновременно. Для PCIe 2.0, который увеличивается до 5 Гбит / с, а одна линия PCIe 3.0 может нести 8 Гбит / с.
Гигатрансферы в секунду - это то же самое (в данном случае) как гигабиты в секунду . Все версии PCI Express теряют часть своей теоретической максимальной пропускную способность для физических расходов, связанных с электронными передачами. PCIe 1. * и 2.0 используют кодирование 8b / 10b (например, SATA), результатом чего является то, что каждые 8 бит данных стоят 10 бит для передачи, поэтому они теряют 20 процентов своей теоретической пропускной способности . Это просто затраты на ведение бизнеса.
Максимальная скорость передачи данных на PCI-1.0 составляет восемьдесят процентов от 2,5 Гбит / с. Это дает нам два гигабит в секунду, или 250 Мбайт / с (помните, восемь бит в байт). Интерфейс PCIe является двунаправленным, так что это 250 Мбайт / с в каждом направлении, на дорожку. PCIe 2.0 удваивает пропускную способность на одну полосу до 5 Гбит / с, что дает нам 500 МБ / с фактической передачи данных на полосу.
Интерфейс PCIe 3.0 имеет удвоеную скорость передачи данных по сравнению PCI 2.0.
И так мы знаем, что PCIe 3.0 вдвое превышает скорость PCI 2.0, но, как мы видели выше, теоретическая пропускная способность каждой полосы составляет 8 Гбит / с, что на 60 процентов больше, чем 5GT / s PCIe 2.0. Это потому, что PCIe 3.0 и выше используют более эффективную схему кодирования под названием 128b / 130b , поэтому потребление ресурсов намного меньше - всего 1,54 процента. Это означает, что один слот PCIe 3.0 с пропускной способностью 8 Гбит / с может отправлять 985 МБ / с. Это не совсем вдвое 500 Мбайт / с, но это достаточно близко для маркетинговых целей.
Это означает, что соединение PCIe 3.0 x4 (3,94 ГБ / с) имеет почти такую же пропускную способность, как PCIe 1.1 x16 или PCIe 2.0 x8 (оба 4 ГБ / с).
Современные графические процессоры используют интерфейс x16 PCIe 2.0 или 3.0. Это не значит, что они всегда работают со скоростью x16. На многих материнских платах имеется несколько физических слотов x16, но имеется меньшее количество реальных полос PCIe.
И так ,у нас на примере на рабочем столе Z87 (Haswell) или Z77 (Ivy Bridge) процессор имеет 16 линий PCIe 3.0 . На чипсетах Intel есть еще восемь дорожек PCIe 2.0, но они обычно используются для звуковых карт, RAID-карт и т. Д. (Чипсет AMD 990FX включает в себя 32 полосы PCIe 2.0 и четыре на северном мосту). В приведенной выше плате Asus слоты PCIe 3.0 являются полосами ЦП, в то время как всем остальным приходится делиться восемью чипсетами PCIe 2.0. Использование слота PCIe 2.0 x16 в режиме x4 отключает три слота PCIe 2.0 x1.
Таким образом, одна видеокарта x16 будет использовать все 16 PCI-дорожек с процессором PCI, но добавление графического процессора во вторую полосу x16 приведет к отключению обоих подключений видеокарт до восьми полос . Добавление третьего графического процессора приведет к отключению подключеной первой карты к x8, а к подключению второй и третьей карт - к x4.
Вот почему многие люди, которые запускают установки с несколькими GPU, предпочитают архитектуры энтузиастов Intel, такие как Sandy Bridge-E и Ivy Bridge-E так как некоторые Процессоры с технологией Ivy Bridge-E имеют возможность до сорока полос в PCIe 3.0 . Этого достаточно, чтобы запустить две карты по x16 и одну на x8, одну карту на x16 и три карты на x8 или одну на x16, две на x8 и еще две на x4.
Это важно для производительности?
Два графических процессора PCIe 3.0, работающие на x8 каждый на материнской плате PCIe 3.0, имеют примерно такую же пропускную способность, что и два графических процессора PCIe 2.0, работающих на x16 - первый набор работает со скоростью 7,88 ГБ / с каждый, а второй второй работает со скоростью 8 ГБ / с. Если ваша материнская плата или видеокарта ограничена подключением PCIe 2.0, вы будете зависать из за более медленного интерфейса.
TechPowerUp продемонстрировал огромный объем производительности PCIe. В то время они тестировали две мощные карты с одним GPU - AMD Radeon HD 7970 и Nvidia GeForce GTX 680 - на x4, x8 и x16 с использованием PCIe 1.1, 2.0 и 3.0, все на одной материнской плате. Это, безусловно, лучший тест, который я когда-либо видел на масштабировании полосы пропускания PCIe. Н а странице сводки производительности собраны относительные результаты с первого взгляда.
Как и следовало ожидать, эквивалентные конфигурации пропускной способности работают примерно одинаково. Цитируем авторов TechPowerUp : «Наше тестирование подтверждает, что современные графические карты отлично работают при меньшей скорости шины, однако производительность ухудшает скорость работы шины. Все вплоть до x16 1.1 и его эквивалентов (x8 2.0, x4 3.0) обеспечивает достаточную игровую производительность даже при использовании новейшего графического оборудования, теряя всего лишь 5% в среднем в худшем случае. [выделено мной] Только на более низких скоростях мы видим резкие потери частоты кадров, что оправдывало бы действие ».
Самая интересная часть этих результатов - это вывод о том, что самые мощные графические карты прошлого года отлично работают на PCIe 2.0 x8 или даже PCIe 3.0 x4. Это означает, что трехсторонний SLI или CrossFireX должен быть жизнеспособным, даже в x8 / x4 / x4, на Ivy Bridge или рабочих столах Haswell . Но даже если у вас нет PCIe 3.0, вы не пропустите большую производительность на x8 на подключении PCIe 2.0.
Двойная пропускная способность PCIe 3.0 x16 по сравнению с PCIe 2.0, похоже, пока не имеет большого значения. Ryan Smith от AnandTech протестировал две Nvidia GeForce GTX Titans - самые быстрые карты с одним GPU в SLI на PCIe 3.0 и 2.0 и в лучшем случае обеспечила улучшение производительност и на 57 % по сравнению с 5760 x 1200.
Так что это хорошая новость для людей со старыми материнскими платами или видеокартами. Если у вас есть хотя бы PCI Express 2.0 x8, вы вряд ли оставите какую-либо надежду на производительность , даже на самых быстрых картах.
Интерфейс Thunderbolt
Thunderbolt - это интерфейс передачи данных, который может проходить через сигналы PCI Express и DisplayPort в зависимости от того, к чему он подключен. Контроллер Thunderbolt состоит из двух двунаправленных каналов данных, причем каждый канал содержит вход и выходную полосу.
Микросхемы Thunderbolt на каждом конце кабеля используются как в DisplayPort 1.1a, как и в четырехполосной шине PCIe 2.0. Каждый канал независим и может либо переносить DisplayPort, либо PCIe, но не оба. Каждое направление в каждом канале имеет теоретическую максимальную пропускную способность 10 Гбит / с - то же, что и две полосы PCIe 2.0. Как обсуждалось выше, из-за кодирования 8b / 10b то 20 процентов теоретического предела PCI Express 2.0 посвящено служебным нагрузкам сигнала, поэтому максимальная теоретическая пропускная способность одного канала Thunderbolt составляет 1 ГБ / с в каждом направлении.
В Thunderbolt для первого поколения это так же быстро на сколько это возможно, поскольку каждое устройство может получить доступ только к одному из двух каналов, и вы не можете их комбинировать. Передача данных происходит довольно быстро, так как вы можете отправлять видео высокого разрешения на монитор DisplayPort со скоростью 10 Гбит / с по одному каналу, одновременно считывая 1 ГБ / с с SSD RAID .
Итак, сколько производительности вы можете вытащить из соединения Thunderbolt?
В пример: Gordon Ung at Maximum PC записывает максимальную скорость чтения 931 МБ / с при чтении с RAID 0 четырех SSD SandForce SF-2281 на 240 ГБ в шасси Pegasus R4.
Четырехпотоковый RAID 0 SSD будет довольно быстрым для соединения Thunderbolt первого поколения. Двухдисковый RAID 0 может приближаться к скорости отдельных дисков , хороший SSD с пропускной способностью 6 Гбит / с может достигать 515 Мбайт / с. RAID 0 из двух 6 Гбит / с SSD может легко насытить соединение 10 Гбит / с, доступное в Thunderbolt первого поколения.
Очень короткая заметка о производительности PCIe SSD (по сравнению с Thunderbolt)
Несмотря на ограничения в Thunderbolt первого поколения, он по-прежнему намного лучше внешнего интерфейса для хранения данных, чем USB 3.0.
Жёсткий SSD диск OCZ RevoDrive 3 x2, подключенный к PCIe SSD, может достигать максимума 1,5 ГБ / с в некоторых последовательных тестах чтения на PCIe 2.0 x4-соединении. Этот диск использует контроллер SAS-PCIe, а не контроллер SATA для RAID-карты для подключения PCIe, но, безусловно, это не может объяснить всю разницу в скорости. В конце концов, Thunderbolt - это соединение PCIe 2.0 x4, верно?
Следующая версия Thunderbolt
Следующая версия Thunderbolt, искусно названная Thunderbolt 2, позволит вам объединить оба канала в один, с теоретическим максимумом 20 Гбит / с (2 ГБ / с, после кодирования), позволяя устройствам использовать все четыре полосы PCIe 2.0 в соединении Thunderbolt , Это также увеличивает пропускную способность на стороне дисплея; вы сможете транслировать 4K-видео на этот фантастический монитор 4K, который у вас есть. Пока Thunderbolt 2 доступен только на нескольких материнских платах от Asus
Читайте также: