web-dev-qa-db-fra.com

Force Renegotiation de la vitesse de liaison PCI Express? x2 la carte revient à x1 largeur

Dans le but de contourner compatibilité et barrières de coût à l'utilisation de lecteurs SSD avec de nouveaux serveurs HP ProLiant Gen8, je travaille à valider des SSD basés sur PCIe sur la plate-forme. J'ai expérimenté un produit intéressant de autre informatique mondial appelé le ACCELSIOR E2 .

enter image description here

Ceci est une conception de base; Une carte PCIe avec un contrôleur de raid SATA Marvell 6GBPS SATA et deux "lames" SSD connectées à la carte. Celles-ci peuvent être transmises au système d'exploitation pour logiciel RAID ( [~ # ~ # ~ ~ ~ ~ ~ ~] , par exemple) ou à effet de levier sous forme de matériel RAID0 matériel ou de paire de miroir RAID1. Tifty. Il suffit de compacter un contrôleur et des disques dans un très petit facteur de forme.

Le problème:

Regardez ce connecteur PCIe. C'est un PCIe X2 Interface. Physique Tailles de slot PCIe/piste sont typiquement x1, x4, x8 et x16 , avec des connexions électriques généralement x1, x4, x8 et x16. C'est très bien. J'ai utilisé - x1 cartes dans les serveurs avant.

J'ai commencé à tester les performances de cette carte sur un système démarré et découverte que les vitesses de lecture/écriture sont étrangères à ~ 410 Mo/s, quelle que soit la configuration du serveur/emplacement/BIOS. Les serveurs utilisés étaient des systèmes HP ProLiant G6, G7 et GEN8 (NEHALEM, WESTMERE et Pont de Sandy) avec des emplacements X4 et X8 PCIE. En regardant le BIOS de la carte a montré que l'appareil négocié: PCIe 2.0 5.0Gbps x1 - Il s'agit donc d'une voie PCIe au lieu de deux, il est donc disponible que la moitié de la bande passante annoncée est disponible.

Y a-t-il un moyen de forcer un périphérique PCIe à fonctionner à une vitesse différente?

Mes recherches montrent que PCIe X2 est un peu une largeur de voie bizarre ... La norme PCI Express apparemment pas nécessite une compatibilité avec les largeurs de la voie X2 , alors je suppose que les contrôleurs de mes serveurs tombent Retour à x1 ... Est-ce que j'ai un recours?


Abrégé lspci -vvv sortir. Notez la différence entre les lignes LnkSta et LnkCap lignes.

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
15
ewwhite

J'ai encore essayé de nouveau sur une plate-forme HP légèrement différente, le 2U HP ProLiant DL380P GEN8 par rapport au 1U DL360P GEN8. J'ai reçu les résultats appropriés Utilisation de cette combinaison de matériel.

Le micrologiciel d'accueil de Gen8 actuel permet désormais aux liens PCIe de négocier à la vitesse appropriée. Ces périphériques sont donc compatibles avec les serveurs 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-
2
ewwhite

C'est la réponse officielle de l'OWS, désormais une autre réponse s'il est possible de forcer le contrôleur HP à la hausse de la largeur de X2, cela nécessitera des recherches supplémentaires. -)

enter image description here

6
Danila Ladner

J'ai sur la main un serveur IBM avec une carte Broadcom 4 × 1GBE ... négocié de 2,0x4 à 2.0x2:

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-

Il y avait un connecteur X4 que je suis à qui je suis deviner n'est entièrement utilisé que lorsqu'il est mis dans une fente PCIe V1, il semble donc qu'il s'agisse de négocier jusqu'à X2 lorsqu'il est utilisé dans une fente PCIe V2 (depuis 5GT/S Bidirectionnel suffit à 4 × 1GBE).

La même chose pourrait-elle se produire avec votre carte?

(Sinon, ma réponse est: utilisez IBM au lieu de HP: p

0
MikeyB