Pci express l1 substates settings что
Чтобы выбрать первичный видеоадаптер (если в системе несколько видеоадаптеров) в BIOS существую параметры Init Display First, Primary Graphic's Adapter.
Возможные значения:
1. PCI — система попытается в первую очередь определить видеоадаптер, установленный в слот PCI; в случае неудачи компьютер обратится к другому доступному адаптеру (AGP, PCI Express или интегрированному в системную плату);
2. AGP — первым будет инициализирован AGP-адаптер;
3. Onboard — в первую очередь определится адаптер, интегрированный в системную плату (подобные решения обычно используются в недорогих компьютерах);
4. PCI Express (PCIE, PEG) — первичным будет адаптер PCI Express.
В некоторых версиях BIOS может указываться порядок опроса адаптеров, например PCI/AGP и AGP/PCI.
Из перечисленных значений в вашей системе будут присутствовать только те, которые фактически поддерживаются системной платой.
Onboard GPU, Internal Graphics Mode
С помощью этого параметра можно отключить интегрированный видеоадаптер, если вы собираетесь установить отдельный видеоадаптер в слот PCI Express.
Возможные значения:
1. Auto, Enable If No Ext PEG — интегрированный видеоадаптер будет включен только при отсутствии дополнительных адаптеров;
2. Enabled — интегрированный видеоадаптер всегда включен, независимо от наличия дополнительного адаптера;
3. Disabled — интегрированный видеоадаптер выключен.
VGA Share Memory Size, Frame Buffer Size
Параметр позволяет установить размер оперативной памяти, который будет выделяться для работы интегрированного видеоадаптера.
Возможные значения:
8М, 16М, 32М, 64М, 12 8М, 256М, 512М — размер выделяемой памяти в мегабайтах. Размер оперативной памяти, доступной для операционной системы и приложений, будет уменьшен на соответствующую величину.
PCI Latency Timer
Данный параметр задает временную задержку, когда передается контроль над шиной PCI от одного устройства, работающего в режиме Bus Master , к другому.
Возможные значения:
32, 64, 96,128,160,192, 224, 248. Они определяют максимальное количество тактов шины PCI, в течение которых устройство может ею управлять, когда доступ к шине понадобился для другого устройства.
По умолчанию устанавливается значение в 32 или 64 такта, которое, как правило, соответствует максимальной производительности системы. Увеличение времени задержки может улучшить работу плат расширения с интенсивным использованием шины, например адаптеров SCSI или RAID. Однако это может негативно сказаться на работе других PCI-устройств, например жестких дисков IDE, которые не смогут своевременно получать доступ к шине.
Maximum Payload Size
Параметр присутствует в некоторых системных платах с шиной PCI Express и устанавливает максимальный размер пакета уровня транзакций (TLP), передаваемого по этой шине.
Возможные значения параметра:
128, 256, 512,1024, 2048, 4096. Они определяют максимальный размер в байтах пакета TLP. Как правило, по умолчанию устанавливается значение 4096, которое не следует менять без особой необходимости, поскольку при этом, как правило, обеспечивается максимальная производительность PCI Express.
Если в вашей системе шина PCI Express есть, а параметра нет, значит, размер пакета TLP установлен по умолчанию (обычно 4096 байт) и не подлежит изменению.
In many of today’s mobile multimedia, laptop, computer, server, networking and storage applications, PCI Express® (PCIe) has evolved into the interconnect of choice. PCI Special Interest Group (PCI-SIG), the standards body for PCIe, accomplished this by continually evolving the specification at an incredible rate to improve performance, increase efficiency, and lower power consumption, thereby satisfying the divergent needs of these applications.
Over the last couple of years, PCI-SIG has focused on reducing power consumption while the PCIe interface is active to enable better platform power management. The Latency Tolerance Reporting (LTR) mechanism has been added to the specification, which tells the host the latency tolerance a device has in response to an interrupt from the device. This allows the host to judiciously decide how long to wait before servicing the interrupt from the device in order to coordinate multiple devices and achieve the maximum power optimizations for the system. Another addition, Optimized Buffer Flush/Fill (OBFF), enables the host to provide system state information, via messages, to devices. Devices use this system state information to optimize system power consumption—allowing the Host CPU and memory sub-system to power down and stay in their low power states longer.
The latest ECN from PCI-SIG aims to reduce power consumption while a device is in the suspend state (also known as “standby”) in order to extend the battery life as well as meeting the energy consumption standards set out by governments worldwide. Pulling your tablet or laptop out of your bag during a long flight, only to find that it consumed all of the battery power while it was in standby mode, is one of a business traveler’s nightmares. This experience is a lesson in how non-optimized systems consume a surprising amount of power while in the standby state. PCI-SIG is addressing this situation, as well as meeting the requirements set forth by international regulatory agencies for green, zero-consumption idle power.
While the PCIe specification includes an L1 low-power state, it alone does not meet the thin and light form factor requirements for idle power. Consumers are demanding that these devices have 8 to 10 hours of use time and seemingly an infinite amount of standby time. Of course, this has to be done with minimum added costs during product development while maintaining backwards compatibility.
A PCIe link is a serial link that directly connects two components, such as a Host and a Device as shown in Figure 1. Ignoring the state of the Host or the Device for this discussion, the PCIe link is defined to save power when the controlling link state machine (LTSSM) is in the L1 state. However, the PCIe interface has both analog and digital circuits and the L1 state doesn’t turn off all the analog circuits in the PHY. The Receiver Electrical Idle detector and the transmit common-mode voltage driver continue drawing power. The result is that each lane of the link can consume 10 to 25mW per lane while in standby…quietly draining the device’s battery.
С помощью данной опции можно установить приоритет доступа к системной шине между процессором и шиной PCI. То есть выбор устройства (процессор или PCI-карта), которое получит доступ к системной шине при одновременном поступлении на FSB запроса от данных устройств. Опция работает только при наличии PCI-устройств, которые поддерживают режим Bus Master .
Favor CPU – при одновременном поступлении запроса на системную шину от процессора и устройства PCI приоритет имеет процессор;
Favor PCI – при одновременном поступлении запроса на системную шину от процессора и устройства PCI приоритет имеет PCI-устройство;
Rotation – каждое из устройств (процессор и PCI-карта) на время (по очереди) получают приоритет доступа к шине FSB;
Установка соотношения частот AGP -шины и шины PCI (значение частоты AGP -шины / значение частоты шины PCI ).
С помощью данной опции можно разрешить/запретить одновременную работу нескольких устройств, подключенных к шине PCI.
Примечание. Bus Master – режим, при котором устройства, подключенные к PCI-шине, самостоятельно (без участия ЦП) управляют шиной.
С помощью данной опции можно включить использование специального буфера ввода-вывода, через который устройства могут обращаться к шине PCI.
Использование опции позволяет системным устройствам инициировать повторную запись данных в шину PCI, если данные долго находятся в буфере отложенной записи.
Disabled (или Off ) – запретить повторную запись данных в шину PCI, если данные долго находятся в буфере отложенной записи.
Данный параметр позволяет ускорить процесс обмена данными с шиной PCI ( разрешает запись по 4 машинных слова за один такт в буфер чтения-записи шины PCI ). Устройства считывают данные с буфера или записывают ее туда, не используя процессор.
Примечание. Пакетный режим передачи данных ( Burst Mode ) – увеличивает скорость передачи данных за счет того, что система не тратит время на указание текущего адреса внутри пакета (блока). Адрес выдается один раз, а затем подряд выполняется серия циклов чтения/записи.
Оптимизация обмена данными между процессором и интерфейсом PCI/IDE путем предварительной буферизации данных.
Disabled (или Off ) – запретить предварительную буферизацию данных при обмене данными между процессором и интерфейсом PCI/IDE.
Установка времени задержки (в тактах системной шины) перед началом записи данных из процессора в шину PCI.
Данный параметр позволяет установить одновременный доступ к шине PCI и восьмиразрядным ISA картам расширения, что позволяет повысить производительность системы. Использование данной опции возможно только в случае поддержки материнской платой спецификации PCI 2.1.
Использование данной опции позволяет дать устройству, установленному в первый PCI-слот высший приоритет относительно других устройств.
Enabled (или On ) – устройство, установленное в первый PCI-слот имеет высший приоритет относительно других устройств;
Опция позволяет разрешить/запретить всем устройствам, управляющим шиной PCI (при использовании режима Bus Master), одновременно использовать буфер отложенной записи.
Определения приоритета процессора при работе с шиной PCI, если другим устройствам также предоставлена возможность управления данной шиной. Другими словами опция устанавливает количество PCI -циклов, по истечении которых процессор получит доступ к шине PCI.
Включение данной опции позволяет разрешить параллельную работу шин PCI и ISA (работа с устройствами PCI в момент, когда идет обмен данными с шиной ISA).
Поддержка спецификации 2.1 шины PCI . Спецификация PCI 2.1 позволяет использовать частоты 66 МГц и подключение к шине PCI более 4 устройств.
Использование режима параллельной работы нескольких устройств PCI при обращении PCI-шины к процессору.
Опция позволяет включить/отключить проверку контроллером шины данные при записи из буфера в шину PCI . В случае возникновения ошибок запись данных в шину повторяется.
В этом разделе описываются практически все (по мере создания) параметры, устанавливаемые в программе SETUP для BIOS фирмы AWARD Software International Inc. В конкретной материнской плате каких-то из описываемых параметров может и не быть. Одни и те же параметры могут называться по разному в зависимости от производителя материнской платы, поэтому здесь в некоторых случаях приведено несколько вариантов.
Для просмотра и корректировки установок chipset в BIOS вашего компьютера рекомендуем воспользоваться прелестной программой TweakBIOS. С помощью этой программы можно изменять установки в BIOS "на лету", а также увидеть, правильно ли программа SETUP выполнила установки.
ПРИМЕЧАНИЕ: Программа запускается и под различными Windows, но использовать ее можно только в DOS.
Содержание:
Раздел BIOS FEATURES SETUP
Раздел CHIPSET FEATURES SETUP
Раздел PnP/PCI Configuration Setup
Раздел Power Management Setup
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Yes - освободить IRQ 6
- No — не освобождать (независимо от того, есть ли флоппи-дисковод или нет)
- Enabled - разрешено
- Disabled - запрещено
Раздел CHIPSET FEATURES SETUP
Установка параметров для FPM DRAM, EDO DRAM и Synchronous DRAM
Конфигурирование шин PCI, AGP, портов ввода/вывода и установка параметров IDE контроллера
-
(Режим кэширования для видеопамяти) — параметр действителен только для процессоров архитектуры Pentium Pro (Pentium II, Deshutes и т.п.). В процессоре Pentium Pro была предусмотрена возможность изменять режим кэширования в зависимости от конкретной области памяти через специальные внутренние регистры, называемые Memory Type Range Registers — MTRR. С помощью этих регистров для конкретной области памяти могут быть установлены режимы UC (uncached — не кэшируется), WC (write combining — объединенная запись), WP (write protect — защита от записи), WT (write through — сквозная запись) и WB (write back — обратная запись). Установка режима USWC (uncached, speculative write combining — не кэшировать, режим объединенной записи) позволяет значительно ускорить вывод данных через шину PCI на видеокарту (до 90 MB/c вместо 8 MB/c). Следует учесть, что видеокарта должна поддерживать доступ к своей памяти в диапазоне от A0000 — BFFFF (128 kB) и иметь линейный буфер кадра. Поэтому лучше установить режим USWC, но в случае возникновения каких-либо проблем (система может не загрузиться) установить значение по умолчанию UC. Может принимать значения:
- UC - uncached — не кэшируется
- USWC — uncached, speculative write combining — не кэшировать, режим объединенной записи.
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Normal — обычный интерфейс принтера, также называется SPP
- ECP — порт с расширенными возможностями
- EPP — расширенный принтерный порт
- ECP + EPP- можно использовать оба режима
- SPP — обычный интерфейс принтера, также называется SPP
- ECP — порт с расширенными возможностями
- EPP — расширенный принтерный порт
- EPP 1.9 — версия 1.9 исполнения интерфейса
- EPP 1.7 — версия 1.7 исполнения интерфейса
- 1 — канал 1
- 3 - канал 3
- Disabled - запрещено использовать DMA
- Primary - разрешена работа только первого канала
- Secondary - разрешена работа только второго канала
- Both - разрешена работа обеих каналов
- Disable - запрещена работа обеих каналов
- Enable - контроллер разрешен
- Disable - контроллер запрещен
- PNP OS Installed(установлена ли операционная система с поддержкой режима Plug&Play?) - Установить Yes, если операционная система поддерживает Plug&Play (например, Windows 95) и No в противном случае.
- Resources Controlled By(как управляются ресурсы) - Если выбрано AUTO, то BIOS сам автоматически назначит прерывания и каналы DMA всем устройствам, подключенным к шине PCI и эти параметры не будут появляться на экране. В противном случае все эти параметры следует установить вручную. В некоторых вариантах BIOS этот параметр может устанавливаться индивидуально для каждого PCI слота и выглядеть так: Slot 1 IRQ, Slot 2 IRQ и т.д. (сброс конфигурационных данных) — Рекомендуется устанавливать его в Disabled. При установке Enabled BIOS будет очищать область Extended System Configuration Data (Расширенные данные о конфигурации системы — ESCD), в которой хранятся данные о конфигурировании BIOS`ом системы, поэтому возможны аппаратные конфликты у "брошенных" таким образом на произвол судьбы устройств. (прерывание с номером n назначено на. ) — Каждому прерыванию системы может быть назначен один из следующих типов устройств:
- Legacy ISA (классические ISA карты) — Обычные карты для ISA, такие как модемы или звуковые карты без поддержки Plug&Play. Эти карты требуют назначения прерываний в соответствии с документацией на них.
- PCI/ISA PnP (устройства для шины PCI или устройства для шины ISA с поддержкой Plug&Play) — этот параметр устанавливается только для устройств на шине PCI или ISA карт с поддержкой Plug&Play.
- Legacy ISA (классические ISA карты) — Обычные карты для ISA, такие как модемы или звуковые карты без поддержки Plug&Play. Эти карты требуют назначения каналов DMA в соответствии с документацией на них.
- PCI/ISA PnP (устройства для шины PCI или устройства для шины ISA с поддержкой Plug&Play) — этот параметр устанавливается только для устройств на шине PCI или ISA карт с поддержкой Plug&Play.
- Level (уровень) — контроллер прерываний реагирует только на уровень сигнала.
- Edge (перепад) - контроллер прерываний реагирует только на перепад уровня сигнала.
- PCI IDE IRQ mapping (используется для PCI IDE)
- PC AT (ISA) (используется для ISA)
- Enabled - разрешено
- Disabled - запрещено
- No/ICU (нет/конфигурационная утилита для ISA) — если установлено это значение, то BIOS может распоряжаться этим прерыванием по своему усмотрению. Для DOS настройка параметров в этом случае может также выполняться с помощью программы ISA Configuration Utility от Intel.
- Yes (да) - означает принудительное освобождение прерывания для какой-либо карты на шине ISA, не поддерживающей режим Plug&Play. Рекомендуется всегда указывать Yes для таких карт и нужных им прерываний, так как в противном случае BIOS может назначить прерывание, жестко используемое какой-либо картой на ISA, другой карте, что может вызвать даже прекращение нормальной работы компьютера.
- No/ICU (нет/конфигурационная утилита для ISA) — если установлено это значение, то BIOS может распоряжаться этим каналом DMA по своему усмотрению. Для DOS настройка параметров в этом случае может также выполняться с помощью программы ISA Configuration Utility от Intel.
- Yes (да) - означает принудительное освобождение канала DMA для какой-либо карты на шине ISA, не поддерживающей режим Plug&Play. Рекомендуется всегда указывать Yes для таких карт и нужных им каналом DMA, так как в противном случае BIOS может назначить канал, жестко используемый какой-либо картой на ISA, другой карте, что может вызвать даже прекращение нормальной работы компьютера.
- No/ICU (нет/ICU) - оставляет управление этим параметром на усмотрение BIOS или программы ICU.
- C800, CC00, D000, D400, D800 и DC00 - указывается адрес блока памяти. Кроме этого, появляется дополнительный параметр ISA MEM Block SIZE (размер блока памяти), который нужен в том случае, если таких ISA карт несколько и этот параметр может принимать значения 8K, 16K, 32K, 64K
- AUTO (автоматически) — Разрешен поиск SCSI контроллера Adaptec и запуск BIOS для него.
- Disabled (запрещено) — Устанавливается в это значение при отсутствии SCSI карты.
- Yes - разрешено
- No — запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- AUTO (автоматически) — Разрешен поиск SCSI контроллера и запуск BIOS для него.
- Disabled (запрещено) — Устанавливается в это значение при отсутствии SCSI карты.
- Enabled - разрешено
- Disabled - запрещено
- PCI/AGP - сначала BIOS PCI видеокарты, затем AGP
- AGP/PCI - сначала BIOS AGP видеокарты, затем PCI
- OS — поддержка через операционную систему
- BIOS - поддержка через BIOS
Раздел Power Management Setup
- Power Management(управление энергопотреблением) — позволяет либо разрешать BIOS'у снижать энергопотребление компьютера, если за ним не работают, либо запрещать. Может принимать значения:
- User Define (определяется пользователем) — при установке этого параметра вы можете самостоятельно установить время перехода в режим пониженного энергопотребления.
- Min Saving (минимальное энергосбережение) — при выборе этого параметра компьютер будет переходить в режим пониженного энергопотребления через время от 40 мин. до 2 часов (зависит от конкретного BIOS материнской платы)
- Max Saving (максимальное энергосбережение) — компьютер перейдет в режим пониженного энергопотребления через 10 — 30 с. после прекращения работы пользователя с ним.
- Disable (запрещение энергосбережения) — запрещает режим энергосбережения.
- Enabled - разрешено
- Disabled - запрещено
- Susp, Stby -> Off (выключение в режиме Suspend И Standby) — монитор перейдет в режим пониженного энергопотребления при наступлении либо режима Suspend, либо Standby.
- All modes -> Off (выключение во всех режимах) — монитор будет переведен в режим пониженного энергопотребления в любом режиме.
- Always On (всегда включен) — монитор никогда не будет переведен в режим пониженного энергопотребления
- Suspend -> Off (выключение в режиме Suspend) — монитор перейдет в режим пониженного энергопотребления при наступлении режима Suspend.
- DPMS OFF - снижение энергопотребления монитора до минимума
- DPMS Reduce ON - монитор включен и может использоваться
- DPMS Standby - монитор в режиме малого энергопотребления
- DPMS Suspend — монитор в режиме сверхмалого энергопотребления
- Blank Screen - экран пуст, но монитор потребляет полную мощность
- V/H SYNC+Blank - снимаются сигналы разверток — монитор переходит в режим наименьшего энергопотребления.
- Enabled - разрешено
- Disabled - запрещено
-
(частота процессора в режиме Standby) - определяет коэффициент деления тактовой частоты в режиме Standby (ожидания работы).
- HDD Power Down(выключение жесткого диска) - устанавливает либо время, через которое при отсутствии обращения жесткий диск будет выключен, либо запрещает такое выключение вообще. Параметр не оказывает влияние на диски SCSI. Может принимать значения:
- От 1 до 15 минут
- Disabled - запрещено
- 30 Sec, 1 Min, 2 Min, 4 min, 8 Min, 20 Min, 30 Min, 40 Min, 1 Hour - время перехода (Sec — секунды, Min — минуты, Hour — час)
- Disabled - запрещено
- 30 Sec, 1 Min, 2 Min, 4 min, 8 Min, 20 Min, 30 Min, 40 Min, 1 Hour - время перехода (Sec — секунды, Min — минуты, Hour — час)
- Disabled - запрещено
- 30 Sec, 1 Min, 2 Min, 4 min, 8 Min, 20 Min, 30 Min, 40 Min, 1 Hour - время перехода (Sec — секунды, Min — минуты, Hour — час)
- Disabled - запрещено
-
— разрешение этого параметра приведет к "пробуждению" компьютера от модема или мыши, подключенных к COM2. Может принимать значения:
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Soft Off (программное выключение) — кнопка работает как обычная кнопка включения/выключения питания компьютера, но при этом разрешается программное выключение компьютера (например, при выходе из Windows 95).
- Suspend (временная остановка) — при нажатии на кнопку питания на время менее 4 секунд компьютер переходит в стадию Suspend снижения энергопотребления.
- No Function (нет функций) — кнопка Power становится обычной кнопкой включения/выключения питания.
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Enabled - разрешено
- Disabled - запрещено
- Everday (ежедневно) — при вводе времени компьютер будет включаться ежедневно в назначенное время. Время вводится в поле Time (hh:mm:ss) Alarm в порядке часы:минуты:секунды либо клавишами PgUp, PgDn, либо непосредственным вводом чисел.
- By Date (по дате) - компьютер включится в заданный день и в заданное время. При выборе этого параметра появляется поле для ввода времени (такое же, как и для Everyday) и поле для ввода дня месяца Date of Month Alarm — день месяца — в этом поле вводится число в месяце. Это автоматически означает, что запрограммировать включение компьютера можно только внутри одного месяца.
- Disabled - запрещено
-
— при разрешении этого параметра компьютер не "засыпает", если подключенное к порту COM2 устройство используется. Может принимать значения:
-
(он же Soft-of By PWR-BTTN) (кнопка питания нажата менее 4 секунд) - управляет функциями кнопки Power на системном блоке компьютера. Может принимать значения:
В следующих секциях BIOS только сообщает характеристики некоторых устройств компьютера. Разрешение параметров в этих секциях позволяет отслеживать BIOS'у эти параметры и сообщать об их выходе за пределы допустимого.
Секция Voltage Monitor (наблюдение за напряжениями питания). В этой секции индицируются как напряжения питания, подаваемые на материнскую плату источником питания, так и вырабатываемые на материнской плате. Разъяснения эти параметры не требуют, кроме VCORE — это напряжение питания ядра процессора. Это напряжение вырабатывается, как правило, на материнской плате.
Если спросить, какой интерфейс следует использовать для твердотельного накопителя с поддержкой протокола NVMe, то любой человек (вообще знающий, что такое NVMe) ответит: конечно PCIe 3.0 x4! Правда, с обоснованием у него, скорее всего, возникнут сложности. В лучшем случае получим ответ, что такие накопители поддерживают PCIe 3.0 x4, а пропускная способность интерфейса имеет значение. Иметь-то имеет, однако все разговоры об этом начались только тогда, когда некоторым накопителям на некоторых операциях стало тесно в рамках «обычного» SATA. Но ведь между его 600 МБ/с и (столь же теоретическими) 4 ГБ/с интерфейса PCIe 3.0 x4 — просто пропасть, причем заполненная массой вариантов! А вдруг и одной линии PCIe 3.0 хватит, поскольку это уже в полтора раза больше SATA600? Масла в огонь подливают производители контроллеров, грозящиеся в бюджетной продукции перейти на PCIe 3.0 x2, а также тот факт, что у многих пользователей и такого-то нет. Точнее, теоретически есть, но высвободить их можно, лишь переконфигурировав систему или даже что-то в ней поменяв, чего делать не хочется. А вот купить топовый твердотельный накопитель — хочется, но есть опасения, что пользы от этого не будет совсем никакой (даже морального удовлетворения от результатов тестовых утилит).
Но так это или нет? Иными словами, нужно ли действительно ориентироваться исключительно на поддерживаемый режим работы — или все-таки на практике можно поступиться принципами? Именно это мы сегодня и решили проверить. Пусть проверка будет быстрой и не претендующей на исчерпывающую полноту, однако полученной информации должно оказаться достаточно (как нам кажется) хотя бы для того, чтобы задуматься. А пока вкратце ознакомимся с теорией.
PCI Express: существующие стандарты и их пропускная способность
Начнем с того, что́ представляет собой PCIe и с какой скоростью этот интерфейс работает. Часто его называют «шиной», что несколько неверно идеологически: как таковой шины, с которой соединены все устройства, нет. На деле имеется набор соединений «точка—точка» (похожий на многие другие последовательные интерфейсы) с контроллером в середине и присоединенными к нему устройствами (каждое из которых само по себе может быть и концентратором следующего уровня).
Первая версия PCI Express появилась почти 15 лет назад. Ориентация на использование внутри компьютера (нередко — и в пределах одной платы) позволила сделать стандарт скоростным: 2,5 гигатранзакции в секунду. Поскольку интерфейс последовательный и дуплексный, одна линия PCIe (x1; фактически атомарная единица) обеспечивает передачу данных на скоростях до 5 Гбит/с. Однако в каждом направлении — лишь половина от этого, т. е. 2,5 Гбит/с, причем это полная скорость интерфейса, а не «полезная»: для повышения надежности каждый байт кодируется 10 битами, так что теоретическая пропускная способность одной линии PCIe 1.x составляет примерно 250 МБ/с в каждую сторону. На практике нужно еще передавать служебную информацию, и в итоге правильнее говорить о ≈200 МБ/с передачи пользовательских данных. Что, впрочем, на тот момент времени не только покрывало потребности большинства устройств, но и обеспечивало солидный запас: достаточно вспомнить, что предшественница PCIe в сегменте массовых системных интерфейсов, а именно шина PCI, обеспечивала пропускную способность в 133 МБ/с. И даже если рассматривать не только массовую реализацию, но и все варианты PCI, то максимумом были 533 МБ/с, причем на всю шину, т. е. такая ПС делилась на все подключенные к ней устройства. Здесь же 250 МБ/с (поскольку и для PCI приводится обычно полная, а не полезная пропускная способность) на одну линию — в монопольном использовании. А для устройств, которым нужно больше, изначально была предусмотрена возможность агрегирования нескольких линий в единый интерфейс, по степеням двойки — от 2 до 32, т. е. предусмотренный стандартом вариант х32 в каждую сторону мог передавать уже до 8 ГБ/с. В персональных компьютерах х32 не использовался из-за сложности создания и разведения соответствующих контроллеров и устройств, так что максимумом стал вариант с 16 линиями. Использовался он (да и сейчас используется) в основном видеокартами, поскольку большинству устройств столько не требуется. Вообще, немалому их количеству и одной линии вполне достаточно, но некоторые применяют с успехом и х4, и х8: как раз по накопительной теме — RAID-контроллеры или SSD.
Время на месте не стояло, и около 10 лет назад появилась вторая версия PCIe. Улучшения касались не только скоростей, но и в этом отношении был сделан шаг вперед — интерфейс начал обеспечивать 5 гигатранзакций в секунду с сохранением той же схемы кодирования, т. е. пропускная способность удвоилась. И еще раз она удвоилась в 2010 году: PCIe 3.0 обеспечивает 8 (а не 10) гигатранзакций в секунду, но избыточность уменьшилась — теперь для кодирования 128 бит используется 130, а не 160, как ранее. В принципе, и версия PCIe 4.0 с очередным удвоением скоростей уже готова появиться на бумаге, но в ближайшее время в железе мы ее массово вряд ли увидим. На самом деле и PCIe 3.0 до сих пор в массе платформ используется совместно с PCIe 2.0, потому что и производительность последней для многих сфер применения просто. не нужна. А где нужна — работает старый добрый метод агрегации линий. Только каждая из них стала за прошедшие годы вчетверо быстрее, т. е. PCIe 3.0 х4 — это PCIe 1.0 x16, самый быстрый слот в компьютерах середины нулевых. Именно этот вариант поддерживают топовые контроллеры SSD, и именно его рекомендуется использовать. Понятно, что если такая возможность есть — много не мало. А если ее нет? Будут ли возникать какие-то проблемы, и если да, то какие? Вот с этим-то вопросом нам и предстоит разобраться.
Методика тестирования
Провести тесты с разными версиями стандарта PCIe несложно: практически все контроллеры позволяют использовать не только поддерживаемый ими, но и все более ранние. Вот с количеством линий — сложнее: нам хотелось непосредственно протестировать и варианты с одной-двумя линиями PCIe. Используемая нами обычно плата Asus H97-Pro Gamer на чипсете Intel H97 полного набора не поддерживает, но кроме «процессорного» слота х16 (который обычно и используется) на ней есть еще один, работающий в режимах PCIe 2.0 х2 или х4. Вот этой тройкой мы и воспользовались, добавив к ней еще и режим PCIe 2.0 «процессорного» слота, дабы оценить, есть ли разница. Все-таки в этом случае между процессором и SSD посторонних «посредников» нет, а вот при работе с «чипсетным» слотом — есть: собственно чипсет, фактически соединяющийся с процессором тем же PCIe 2.0 x4. Можно было добавить еще несколько режимов работы, но основную часть исследования мы все равно собирались провести на другой системе.
Дело в том, что мы решили воспользоваться случаем и заодно проверить одну «городскую легенду», а именно поверие о полезности использования топовых процессоров для тестирования накопителей. Вот и взяли восьмиядерный Core i7-5960X — родственника обычно применяемого в тестах Core i3-4170 (это Haswell и Haswell-E), но у которого ядер в четыре раза больше. Кроме того, обнаруженная в закромах плата Asus Sabertooth X99 нам сегодня полезна наличием слота PCIe x4, на деле способного работать как х1 или х2. В этой системе мы протестировали три варианта х4 (PCIe 1.0/2.0/3.0) от процессора и чипсетные PCIe 1.0 х1, PCIe 1.0 х2, PCIe 2.0 х1 и PCIe 2.0 х2 (во всех случаях чипсетные конфигурации отмечены на диаграммах значком (c)). Есть ли смысл сейчас обращаться к первой версии PCIe, с учетом того, что вряд ли найдется хоть одна плата с поддержкой только этой версии стандарта, способная загрузиться с NVMe-устройства? С практической точки зрения — нет, а вот для проверки априори предполагаемого соотношения PCIe 1.1 х4 = PCIe 2.0 х2 и подобных оно нам пригодится. Если проверка покажет, что масштабируемость шины соответствует теории, значит, и неважно, что нам не удалось пока получить практически значимые способы подключения PCIe 3.0 x1/х2: первый будет идентичен как раз PCIe 1.1 х4 или PCIe 2.0 х2, а второй — PCIe 2.0 х4. А они у нас есть.
В плане ПО мы ограничились только Anvil’s Storage Utilities 1.1.0: разнообразные низкоуровневые характеристики накопителей она измеряет неплохо, а ничего другого нам и не нужно. Даже наоборот: любое влияние других компонентов системы является крайне нежелательным, так что низкоуровневая синтетика для наших целей безальтернативна.
В качестве «рабочего тела» мы использовали Patriot Hellfire емкостью 240 ГБ. Как было установлено при его тестировании, это не рекордсмен по производительности, но его скоростные характеристики вполне соответствуют результатам лучших SSD того же класса и той же емкости. Да и более медленные устройства на рынке уже есть, причем их будет становиться все больше. В принципе, можно будет повторить тесты и с чем-нибудь более быстрым, однако, как нам кажется, необходимости в этом нет — результаты предсказуемы. Но не станем забегать вперед, а посмотрим, что же у нас получилось.
Результаты тестов
Тестируя Hellfire, мы обратили внимание на то, что максимальную скорость на последовательных операциях из него можно «выжать» лишь многопоточной нагрузкой, так что это тоже надо принимать во внимание на будущее: теоретическая пропускная способность на то и теоретическая, что «реальные» данные, полученные в разных программах по разным сценариям, будут больше зависеть не от нее, а от этих самых программ и сценариев — в том случае, конечно, когда не помешают обстоятельства непреодолимой силы :) Как раз такие обстоятельства мы сейчас и наблюдаем: выше уже было сказано, что PCIe 1.x x1 — это ≈200 МБ/с, и именно это мы и видим. Две линии PCIe 1.x или одна PCIe 2.0 — вдвое быстрее, и именно это мы и видим. Четыре линии PCIe 1.x, две PCIe 2.0 или одна PCIe 3.0 — еще вдвое быстрее, что подтвердилось для первых двух вариантов, так что и третий вряд ли будет отличаться. То есть в принципе масштабируемость, как и предполагалось, идеальная: операции линейные, флэш с ними справляется хорошо, так что интерфейс имеет значение. Флэш перестает справляться хорошо на PCIe 2.0 x4 для записи (значит, подойдет и PCIe 3.0 x2). Чтение «может» больше, но последний шаг дает уже полутора-, а не двукратный (каким он потенциально должен быть) прирост. Также отметим, что заметной разницы между чипсетным и процессорным контроллером нет, да и между платформами тоже. Впрочем, LGA2011-3 немного впереди, но на самую малость.
Все ровно и красиво. Но шаблоны не рвет: максимум в этих тестах составляет лишь немногим больше 500 МБ/с, а это вполне по силам даже SATA600 или (в приложении к сегодняшнему тестированию) PCIe 1.0 х4 / PCIe 2.0 х2 / PCIe 3.0 х1. Именно так: не стоит пугаться выпуску бюджетных контроллеров под PCIe х2 или наличию лишь такого количества линий (причем версии стандарта 2.0) в слотах М.2 на некоторых платах, когда больше-то и не нужно. Иногда и столько не нужно: максимальные результаты достигнуты при очереди в 16 команд, что для массового ПО не типично. Чаще встречается очередь с 1-4 командами, а для этого обойтись можно и одной линией самого первого PCIe и даже самым первым SATA. Впрочем, накладные расходы и прочее имеют место быть, так что быстрый интерфейс полезен. Однако излишне быстрый — разве что не вреден.
А еще в этом тесте по-разному ведут себя платформы, причем с единичной очередью команд — принципиально по-разному. «Беда» вовсе не в том, что много ядер — плохо. Они тут все равно не используются, разве что одно, и не настолько, чтоб вовсю развернулся буст-режим. Вот и имеем разницу где-то в 20% по частоте ядер и полтора раза по кэш-памяти — она в Haswell-E работает на более низкой частоте, а не синхронно с ядрами. В общем, топовая платформа может пригодиться разве что для вышибания максимума «йопсов» посредством максимально многопоточного режима с большой глубиной очереди команд. Жаль только, что с точки зрения практической работы это совсем уж сферическая синтетика в вакууме :)
На записи положение дел принципиально не изменилось — во всех смыслах. Но, что забавно, на обеих системах самым быстрым оказался режим PCIe 2.0 х4 в «процессорном» слоте. На обеих! И при многократных проверках/перепроверках. Тут уж поневоле задумаешься, нужны ли эти ваши новые стандарты или лучше вообще никуда не торопиться.
При работе с блоками разного размера теоретическая идиллия разбивается о то, что повышение скорости интерфейса все же имеет смысл. Результирующие цифры такие, что хватило бы пары линий PCIe 2.0, но реально в таком случае производительность ниже, чем у PCIe 3.0 х4, пусть и не в разы. И вообще тут бюджетная платформа топовую «забивает» в куда большей степени. А ведь как раз такого рода операции в основном в прикладном ПО и встречаются, т. е. эта диаграмма — наиболее приближенная к реальности. В итоге нет ничего удивительного, что никакого «вау-эффекта» толстые интерфейсы и модные протоколы не дают. Точнее, переходящему с механики — дадут, но ровно такой же, какой ему обеспечит любой твердотельный накопитель с любым интерфейсом.
Итого
Для облегчения восприятия картины по больнице в целом мы воспользовались выдаваемым программой баллом (суммарным — по чтению и записи), проведя его нормирование по «чипсетному» режиму PCIe 2.0 x4: на данный момент именно он является наиболее массово доступным, поскольку встречается даже на LGA1155 или платформах AMD без необходимости «обижать» видеокарту. Кроме того, он эквивалентен PCIe 3.0 x2, который готовятся освоить бюджетные контроллеры. Да и на новой платформе AMD АМ4, опять же, именно этот режим как раз можно получить без влияния на дискретную видеокарту.
Итак, что мы видим? Применение PCIe 3.0 x4 при наличии возможности является, безусловно, предпочтительным, но не необходимым: NVMe-накопителям среднего класса (в своем изначально топовом сегменте) он приносит буквально 10% дополнительной производительности. Да и то — за счет операций в общем-то не столь уж часто встречающихся на практике. Для чего же в данном случае реализован именно этот вариант? Во-первых, была такая возможность, а запас карман не тянет. Во-вторых, есть накопители и побыстрее, чем наш тестовый Patriot Hellfire. В-третьих, есть такие области деятельности, где «атипичные» для настольной системы нагрузки — как раз вполне типичные. Причем именно там наиболее критично быстродействие системы хранения данных или, по крайней мере, возможность сделать ее часть очень быстрой. Но к обычным персональным компьютерам это все не относится.
В них, как видим, и использование PCIe 2.0 x2 (или, соответственно, PCIe 3.0 х1) не приводит к драматическому снижению производительности — лишь на 15-20%. И это несмотря на то, что потенциальные возможности контроллера в этом случае мы ограничили в четыре раза! Для многих операций и такой пропускной способности достаточно. Вот одной линии PCIe 2.0 уже недостаточно, поэтому контроллерам имеет смысл поддерживать именно PCIe 3.0 — и в условиях жесткой нехватки линий в современной системе это будет работать неплохо. Кроме того, полезна ширина х4 — даже при отсутствии поддержки современных версий PCIe в системе она все равно позволит работать с нормальной скоростью (пусть и медленнее, чем могло бы потенциально), если найдется более-менее широкий слот.
В принципе, большое количество сценариев, в которых узким местом оказывается собственно флэш-память (да, это возможно и присуще не только механике), приводит к тому, что четыре линии третьей версии PCIe на этом накопителе обгоняют одну первой примерно в 3,5 раза — теоретическая же пропускная способность этих двух случаев различается в 16 раз. Из чего, разумеется, не следует, что нужно спешно бежать осваивать совсем медленные интерфейсы — их время ушло безвозвратно. Просто многие возможности быстрых интерфейсов могут быть реализованы лишь в будущем. Или в условиях, с которыми обычный пользователь обычного компьютера никогда в жизни непосредственно не столкнется (за исключением любителей меряться известно чем). Собственно, и всё.
Читайте также: