PowerEdge: PCI-kauttakulun "Moduuli 'DevicePowerOn' Power on failed" käytettäessä grafiikkasuorittimia virtuaalikoneiden kanssa vSpheressä
Summary: Virtuaalikone ei käynnisty, kun ESXi-isännässä on määritetty PCI-laitteen läpivienti ja laite on lisätty virtuaalikoneeseen. Se juuttuu 80 prosenttiin ja johtaa sitten virheeseen "tarvittavien sivujen kokonaismäärä (4206594) ylittää rajan (917504)". ...
Instructions
2022-04-22T03:04:15.771Z| vmx| | I005: PCIPassthru: total number of pages needed (4206594) exceeds limit (917504), failing 2022-04-22T03:04:15.771Z| vmx| | I005: Module 'DevicePowerOn' power on failed.

Areenaa
BIOS-isäntäsi BIOS on määritettävä oikein, jotta NVIDIA-grafiikkasuoritin voi läpäistä, ja virtuaalikoneen, joka on tarkoitettu suorittamaan näitä nopeutettuja kuormituksia, on täytettävä tietyt vaatimukset. Tässä osassa kuvataan kaikki nämä vaatimukset.
Mitkä laitteet?
Tämä artikkeli koskee vain, jos PCI-laite kartoittaa muistialueet, joiden koko on yhteensä yli 16 Gt. Ota läpivientilaitteet käyttöön vSpheressä VMwaren tietämyskannan 1010789 julkaisemien ohjeiden mukaisesti. Yleensä kortit, jotka vaativat yli 16 Gt: n muistikartoitusta, ovat huippuluokan kortteja. Noudata tämän artikkelin ohjeita ottaaksesi ne käyttöön läpivientitilassa virtuaalikoneessa.
Isäntälaitteen BIOS
BIOS-isäntätietokone on määritettävä tukemaan näiden huippuluokan PCI-laitteiden tarvitsemia suuria muistialueita. Tämän voi ottaa käyttöön etsimällä isännän BIOS-asetuksen kohdasta "muistikartoitettu I/O yli 4 Gt" ja ottamalla sen käyttöön.

Huomautus: Tämä vaihtoehto ei ole käytettävissä 16G: ssä, mutta oletuksena se on aktivoitu ja voit varata 48 Gt: n GPU: n läpiviennissä virtuaalikoneelle.
Vieraskäyttöjärjestelmä
Jotta voit käyttää näitä suuria muistimäärityksiä, muodosta yhteys VMware-sivustoon Vieraskäyttöjärjestelmän on käynnistyttävä EFI
PCI-laitteen käytettävyyden muokkaaminen isäntäpalvelimessa
vSphere-hypervisor tunnistaa asennetun PCI-yhteensopivan grafiikkasuorittimen ensimmäisen kerran palvelimen käynnistyksen yhteydessä, eikä hypervisoriin ole asennettu erityisiä ohjaimia.
vSphere tunnistaa kaikki PCI-laitteet näin. Voit tarkastella vSphere Client -työkalussa olevien PCI-laitteiden luetteloa valitsemalla käsittelemäsi isäntäpalvelimen ja seuraamalla valikkovalintoja: Konfiguroida >Laitteisto >PCI-laitteet >Muokkaa nähdäksesi luettelon, kuten alla olevan kuvan 2 esimerkissä näkyy.
Jos DirectPath I/O:ta ei ole aiemmin otettu käyttöön kyseisessä grafiikkasuoritinlaitteessa, voit asettaa grafiikkasuoritinlaitteen Direct Path I/O (läpivienti) -tilaan napsauttamalla laitteen merkinnän valintaruutua NVIDIA-laiteesimerkissä esitetyllä tavalla.

Huippuluokan laitteiden ottaminen käyttöön VM-tiedostossa
Kun edellä mainitut vaatimukset täyttyvät, virtuaalikoneen VMX-tiedostoon on lisättävä kaksi merkintää joko muokkaamalla tiedostoa suoraan tai lisäämällä nämä ominaisuudet vSphere-asiakasohjelmalla. Ensimmäinen merkintä on:
pciPassthru.use64bitMMIO="TRUE"
Toisen merkinnän määrittäminen edellyttää yksinkertaista laskutoimitusta. Laske yhteen kaikkien niiden grafiikkasuoritinlaitteiden grafiikkasuoritinmuistin koot(*), jotka aiot siirtää virtuaalikoneeseen, ja pyöristä sitten ylöspäin seuraavaan potenssiin kaksi. Jos haluat käyttää esimerkiksi läpivientiä 4:n 16 Gt:n A2-laitteen kanssa, arvo olisi seuraava: 32 + 32 = 64, pyöristettynä ylöspäin seuraavaan kahden potenssiin tulokseksi 128. Käytä tätä arvoa toisessa merkinnässä:
pciPassthru.64bitMMIOSizeGB="128"
Kun nämä kaksi muutokset tehdään VMX-tiedostoon, ota läpivientilaitteet käyttöön isäntätasolla ja määritä virtuaalikoneeseen siirrettävät laitteet VMware KB:n 1010789 vSpheren vakio-ohjeiden mukaisesti. Virtuaalikoneen pitäisi nyt käynnistyä oikein laitteen ollessa läpikulkutilassa.
Huippuluokan laitteiden ottaminen käyttöön käyttöliittymässä
Valitse virtuaalikone uudelleen vSphere-asiakasohjelmassa ja käytä seuraavia asetuksia: Muokkaa asetuksia>VM-vaihtoehdot> Edistynyt>Määritysparametrit>Muokkaa kokoonpanoa päästäksesi alla olevaan PCI-asetusten luetteloon.

Laskemme "64bitMMIOSizeGB" -parametrin arvon suoraviivaisella tavalla. Laske niiden huippuluokan PCI-grafiikkasuorittimien määrä, jotka aiot siirtää tähän virtuaalikoneeseen. Tämä voi olla yksi tai useampi GPU. Kerro tämä luku 16:lla ja pyöristä se ylöspäin seuraavaan potenssiin kahdesta.
Jos esimerkiksi haluat käyttää läpivientitilaa kahden grafiikkasuoritinlaitteen kanssa samassa virtuaalikoneessa, arvo olisi seuraava: 4 * 16 = 64, pyöristettynä ylöspäin seuraavaan kahden potenssiin, jolloin saadaan 128.
GPU-laitteen määrittäminen virtuaalikoneeseen
Tässä osiossa kuvaillaan grafiikkasuoritinlaitteen määrittäminen virtuaalikoneeseen. Sammuta virtuaalikone, ennen kuin määrität grafiikkasuoritinlaitteen siihen.
Jos haluat antaa virtuaalikoneelle pääsyn PCI-laitteeseen, valitse virtuaalikone vSphere Clientissa, käytä Edit Settings -vaihtoehtoa ja vieritä alas PCI-laiteluetteloon. Jos laitettasi ei ole luettelossa, lisää se luetteloon Lisää uusi laite -painikkeella. Kun asetukset on lisätty, niiden pitäisi näyttää samanlaisilta kuin kuvassa 7. Tässä esimerkissä kyseinen merkintä on PCI-laite 0.

Muistin varaus
Kun PCI-laite määritetään virtuaalikoneeseen, virtuaalikoneessa on oltava muistivaraus virtuaalikoneen täydelle määritetylle muistikoolle. Tämä tehdään vSphere-asiakasohjelmassa valitsemalla virtuaalikone ja käyttämällä Muokkaa asetuksia>Virtuaalinen laitteistomuisti> -toimintoa, jotta voit käyttää ja muuttaa varausalueen arvoa.
Käynnistä lopuksi virtuaalikone. Kun olet käynnistänyt virtuaalikoneen, kirjaudu vieraskäyttöjärjestelmään ja tarkista, että GPU-kortti on läsnä komennoilla:
- Käytä Linux-virtuaalikoneessa komentoa:
"lspci | grep nvidia"
- Windows-käyttöjärjestelmässä voit tarkistaa käytettävissä olevat grafiikkasuorittimet Ohjauspaneelin Laitehallinnasta
Grafiikkasuoritin on nyt valmis sovellusten käyttöön läpivientitilassa.
Additional Information
Vianmääritys
Jos olet noudattanut yllä olevia ohjeita ja virtuaalikone ei vieläkään käynnisty oikein, kun laitteet on otettu käyttöön, tämän osion materiaalista voi olla apua. Jos olet kokeillut alla olevia ehdotuksia ja sinulla on edelleen ongelmia, ota meihin yhteyttä ja voimme auttaa sinua.
Yhdistämisongelma:
Jos virtuaalikoneen vmware.log tiedostossa näkyy seuraavankaltainen virhe:
1 I120: PCIPassthru: 0000:82:00.0 : Device BAR 0 requested 64-bit memory address that exceeded MPN type (62105227100160)
BIOS-asetukset eivät täytä ESXi:n vaatimuksia tämäntyyppisen läpivientilaitteen käyttöönottamiseksi. ESXi 6.0 p4–ESXi 6.5 edellyttää, että PCI-laitteille määritetyn muistin koko on alle 16 Tt. Ongelman voi ehkä kiertää, jos BIOS tukee mahdollisuutta hallita, kuinka korkealla isännän muistiosoitetilassa PCI-muistialueet on kartoitettu. Esimerkiksi SuperMicro-valmistajilla on BIOS-vaihtoehtoja, joilla voidaan muuttaa muistin korkeutta. SuperMicro-järjestelmissä MMIOHBase-parametri voidaan muuttaa pienemmäksi oletusarvosta 56 TB. Sugon-järjestelmissä on myös samanlainen (piilotettu) BIOS-asetus. Tarkista järjestelmän valmistajalta, tukeeko BIOS tätä uudelleenkartoitusominaisuutta. Toinen ratkaisu on päivittää ESXi-versiosi versioon 6.5 u1 tai uudempaan, jolloin 16 Tt:n rajoitus on poistettu.
Väärä kokoonpano:
Virhe seuraavan muotoisessa vmware.log tiedostossa:
1 2016-07-07T09:18:37.624Z| vmx| I120: PCIPassthru: total number of pages needed (2097186) exceeds limit (917504), failing
Ilmaisee, että yli 4 Gt :n aluemäärityksiä ei ole otettu oikein käyttöön isäntä-BIOSissa yllä olevassa BIOS-isäntäosan ohjeiden mukaisesti tai että VMX-merkintöjä ei ole määritetty oikein.
Laitetta ei voi käyttää:
Jos olet noudattanut kaikkia yllä olevia ohjeita ja virtuaalikone on käynnistynyt oikein, mutta näet seuraavankaltaisen viestin, kun suoritat nvidia-smi vieraskäyttöjärjestelmän apuohjelma:
1 Unable to determine the device handle for GPU 0000:13:00.0: Unknown Error
Suosittelemme, että otat yhteyttä suoraan NVIDIAan tai teet verkkohaun käyttämällä tätä merkkijonoa löytääksesi lisätietoja, joista voi olla apua.