15 votos

La fuerza de la renegociación de enlace PCI Express de velocidad? x2 tarjeta vuelve a x1 ancho

En un esfuerzo para sortear la compatibilidad y el coste de las barreras para el uso de discos SSD con los nuevos HP ProLiant Gen8, estoy trabajando para validar basada en PCIe Ssd en la plataforma. He estado experimentando con un producto interesante desde el Otro Mundo de la Computación llamado la Accelsior E2.

enter image description here

Este es un diseño básico; una tarjeta PCIe con un Marvell 6Gbps SATA RAID controller y dos SSD de "cuchillas" conectados a la tarjeta. Estos pueden ser en el pasado-a través del sistema operativo para el RAID por software (ZFS, por ejemplo) o aprovechar como un hardware RAID 0 de la raya o RAID1 par duplicado. Ingeniosa. Es realmente sólo la compactación de un controlador de discos y en un factor de forma pequeño.

El problema:

Mira que el conector PCIe. Eso es un PCie x2 interfaz. Física ranura PCIe/carril tamaños son generalmente x1, x4, x8 y x16, con las conexiones eléctricas en general, x1, x4, x8 y x16. Que está bien. He usado x1 tarjetas en los servidores de antes.

Empecé a probar el rendimiento de esta tarjeta en un sistema de inicio y descubrió que las velocidades de lectura/escritura donde estrangulado a ~410 MB/s, independientemente del servidor/ranura/configuración del BIOS. Los servidores en uso de HP ProLiant G6, G7 y Gen8 (Nehalem, Westmere y Sandy Bridge) sistemas con x4 y x8 ranuras PCIe. Mirando la tarjeta del BIOS mostró que el dispositivo de negociación: PCIe 2.0 5.0Gbps x1 - Tan sólo con una tarjeta PCIe de carril en lugar de dos, por lo tanto sólo la mitad de la publicidad de ancho de banda disponible.

Hay alguna forma de forzar un dispositivo de PCIe para que se ejecute a una velocidad diferente?

Mi investigación muestra que el PCIe x2 es un poco de un bicho raro del ancho del carril... El estándar PCI Express aparentemente no requiere compatibilidad con x2 carriles anchos, así que mi conjetura es que los controladores en mis servidores se caen a x1... ¿tengo algún recurso?


Abreviada lspci -vvv de salida. Nota la diferencia entre el LnkSta y LnkCap líneas.

05:00.0 SATA controller: Marvell Technology Group Ltd. Device 9230 (rev 10) (prog-if 01 [AHCI 1.0])
        Subsystem: Marvell Technology Group Ltd. Device 9230
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
                DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
                LnkCap: Port #0, Speed 5GT/s, Width x2, ASPM L0s L1, Latency L0 <512ns, L1 <64us
                        ClockPM- Surprise- LLActRep- BwNot-
                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
        Kernel driver in use: ahci
        Kernel modules: ahci

6voto

Danila Ladner Puntos 3399

Esa es la respuesta oficial de OWS, ahora otra respuesta si es posible a fuerza de hp, controlador de arriba a x2 ancho, que va a requerir algo más de investigación. -)

enter image description here

3voto

Tina Puntos 21

He probado este de nuevo en un poco diferente de HP de la plataforma, el 2U HP ProLiant DL380p Gen8 frente a la 1U DL360p Gen8. He recibido los resultados apropiados, el uso de esta combinación de hardware.

Actual Gen8 host firmware ahora permite que el PCIe enlaces a negociar en el buen velocidades, por lo que estos dispositivos SON compatibles con ProLiant DL380p Gen8.

Speed 5GT/s, Width x2, ASPM L0s L1, Latency L0 <512ns, L1 <64us
LnkSta: Speed 5GT/s, Width x2, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

0voto

MikeyB Puntos 26178

Tengo a la mano un servidor de IBM con una Broadcom 4×1 gbe tarjeta... negociar a la baja de 2.0 x 4 a 2.0 x 2:

0b:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet (rev 20) 
Subsystem: IBM Device 03a9 
Capabilities: [ac] Express (v2) Endpoint, MSI 00
LnkCap: Port #0, Speed 5GT/s, Width x4, ASPM L0s L1, Latency L0 <2us, L1 <2us 
LnkSta: Speed 5GT/s, Width x2, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

Había un conector x4 que estoy adivinando sólo es plenamente utilizada cuando se pone en un PCIe v1 ranura, por lo que parece que es la negociación de abajo a x2 cuando se utiliza en un PCIe v2 ranura (desde 5GT/s bidireccional es suficiente para 4×1 gbe).

Podría lo mismo estar sucediendo con su tarjeta?

(Si no, mi respuesta es: el uso de IBM en lugar de HP :P)

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: