Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Visual Studio Graphics Diagnostics nem támogatott az ARM64 Visual Studióban.
A Teljesítményprofilozó GPU-használati eszközével jobban megismerheti a Direct3D-alkalmazás magas szintű hardverhasználatát. Segít megállapítani, hogy az alkalmazás teljesítménye processzorhoz vagy GPU-hoz kötött-e, és betekintést nyerhet abba, hogyan használhatja hatékonyabban a platform hardverét. A GPU-használat támogatja a Direct3D 12, Direct3D 11 és Direct3D 10 rendszerű alkalmazásokat. Nem támogatja az egyéb grafikus API-kat, például a Direct2D-t vagy az OpenGL-t.
Így néz ki a GPU Használati jelentés ablaka:
Követelmények
A grafikus diagnosztika követelményei mellett a GPU-használat eszköz használatához a következőkre van szükség:
Egy GPU és illesztőprogram, amely támogatja a szükséges időzítési eszközrendszert.
Megjegyzés:
A támogatott hardverekre és illesztőprogramokra vonatkozó további információkért tekintse meg a dokumentum végén található hardver- és illesztőprogram-támogatást .
További információ a grafikus diagnosztikai követelményekről: Első lépések.
A GPU-használati eszköz használata
Amikor az alkalmazást a GPU-használat eszköz alatt futtatja, a Visual Studio létrehoz egy diagnosztikai munkamenetet. Ez a munkamenet magas szintű információkat jelenít meg az alkalmazás renderelési teljesítményéről és a GPU-használatról valós időben.
A GPU-használat eszköz indítása:
A főmenüben válassza aTeljesítmény és diagnosztika> lehetőséget (vagy a billentyűzeten nyomja le az Alt+F2 billentyűkombinációt).
A Teljesítmény és diagnosztika központban jelölje be a GPU-használat melletti jelölőnégyzetet. Ha szeretné, jelölje be az egyéb eszközök melletti jelölőnégyzeteket. Egyszerre több teljesítmény- és diagnosztikai eszközt is futtathat, hogy teljesebb képet kapjon az alkalmazás teljesítményéről.
Megjegyzés:
Nem minden teljesítmény- és diagnosztikai eszköz használható egyszerre.
A Teljesítmény és diagnosztika központ alján válassza a Start elemet az alkalmazás futtatásához a kiválasztott eszközök alatt.
A valós időben megjelenő magas szintű információk közé tartozik a keret időzítése, a képkockasebesség és a GPU-használat. Ezek az információk egymástól függetlenül vannak ábrázolva, de közös időskálát használnak, hogy könnyen megérthesse a kapcsolatokat.
A Keretidő (ms) és a Képkockák másodpercenként (FPS) gráfok két piros, vízszintes vonallal rendelkeznek, amelyek másodpercenként 60 és 30 képkocka teljesítménycélt mutatnak. A Keretidő grafikonon az alkalmazás meghaladja a teljesítménycélt, ha a grafikon a vonal alatt van, és nem éri el a célt, ha a grafikon a vonal felett van. A Másodpercenkénti képkockák diagram esetében ennek az ellenkezője van: az alkalmazás túllépi a teljesítménycélt, ha a gráf a vonal felett van, és nem veszi figyelembe a célt, ha a gráf a vonal alatt van. Ezeket a grafikonokat elsősorban arra használja, hogy magas szintű képet kapjon az alkalmazás teljesítményéről, és azonosítsa azokat a lassulásokat, amelyeket érdemes megvizsgálni. Például további vizsgálatra lehet szükség, ha hirtelen csökken a keretsebesség, vagy megugrik a GPU-kihasználtság.
Amíg az alkalmazás a GPU-használat eszköz alatt fut, a diagnosztikai munkamenet részletes információkat gyűjt a GPU-n futó grafikus eseményekről is. Ezekkel az információkkal részletesebb jelentést készíthet arról, hogy az alkalmazás hogyan használja a hardvert. Mivel ez a jelentés némi időt vesz igénybe az összegyűjtött adatokból való létrehozáshoz, az csak a diagnosztikai munkamenet után érhető el.
Ha részletesebben szeretne megvizsgálni egy teljesítmény- vagy kihasználtsági problémát, állítsa le a teljesítményadatok gyűjtését, hogy létre tudja hozni a jelentést.
A GPU-használati jelentés létrehozása és megtekintése:
A diagnosztikai munkamenet ablakának alsó részén kattintson a Gyűjtemény leállítása hivatkozásra, vagy válassza a Leállítás lehetőséget a bal felső sarokban.
A jelentés felső részén válasszon ki egy szakaszt az egyik gráfból, amely megjeleníti a kivizsgálni kívánt problémát. A kijelölés akár 3 másodperc is lehet. A hosszabb szakaszok a kezdet felé rövidítve vannak.
A kijelölt elem részletes idővonalának megtekintéséhez a jelentés alsó részén, a ... kattintson ide az adott tartomány GPU-használatának részleteinek megtekintéséhez üzenetben, válassza a részletek megtekintése lehetőséget.
Ez a kijelölés megnyitja a jelentést tartalmazó új, többlapos dokumentumot. A GPU-használat jelentés segít látni, hogy mikor indul el grafikus esemény a PROCESSZORon, mikor éri el a GPU-t, és mennyi ideig tart a GPU futtatása. Ezek az információk segíthetnek azonosítani a kódban a megnövekedett párhuzamosság szűk keresztmetszeteit és lehetőségeit.
Exportálás GPUView-ba vagy Windows-teljesítményelemzőbe
A Visual Studio 2017-től kezdve ezeket az adatokat a GPUView és a Windows Teljesítményelemzővel nyithatja meg. Csak válassza a Megnyitás GpuView-ban vagy Megnyitás WPA-ban lehetőséget, amely a munkamenet jobb alsó sarkában található.
A GPU használati jelentésének használata
A GPU-használati jelentés felső része a processzorfeldolgozási tevékenység, a GPU-renderelési tevékenység és a GPU-másolási tevékenység ütemterveit jeleníti meg. Ezek az idősorok világosszürke, függőleges sávokkal vannak elosztva, amelyek a kijelző függőleges szinkronizálását (vsync) jelzik. A sávok gyakorisága megegyezik az egyik ( a Megjelenítés legördülő listával kiválasztott) kijelző frissítési gyakoriságával, amelyből a GPU használati adatait gyűjtötték.
Mivel a megjelenítés nagyobb frissítési sebességgel rendelkezhet, mint az alkalmazás teljesítménycélja, előfordulhat, hogy nincs 1–1 kapcsolat a vsync és az alkalmazás által elérni kívánt keretsebesség között. A teljesítménycél teljesítéséhez az alkalmazásnak minden feldolgozást végre kell hajtania, el kell végeznie a renderelést, és hívást kell kezdeményeznie Present() a megcélzott keretsebességen. A renderelt keret azonban csak a következő vsync után Present()jelenik meg.
A GPU-használat jelentés alsó része felsorolja a jelentés időszakában történt grafikus eseményeket. Amikor kiválaszt egy eseményt, egy jelölő jelenik meg a megfelelő eseményeknél a megfelelő ütemtervekben. A CPU-szál egyik eseménye általában az API-hívást jeleníti meg, míg az egyik GPU-idővonalon egy másik esemény azt mutatja, hogy a GPU mikor fejezte be a feladatot. Hasonlóképpen, ha kijelöl egy eseményt egy ütemtervben, a jelentés kiemeli a jelentés alsó részén található megfelelő grafikus eseményt.
Ha a jelentés felső részén kicsinyít az ütemtervekre, csak a legtöbb időt igénylő események láthatók. A rövidebb időtartamú események megtekintéséhez nagyítsa az ütemterveket a ctrl+wheel billentyűkombinációval a mutatóeszközön, vagy a felső panel bal alsó sarkában található skálázási vezérlővel. Az ütemterv panel tartalmát húzva is végighaladhat a rögzített eseményeken.
A keresett adatok megkereséséhez szűrje a GPU-használati jelentést a folyamatnevek, a szálazonosítók és az esemény neve alapján. Emellett kiválaszthatja, hogy melyik megjelenítés frissítési gyakorisága határozza meg a vysnc sorokat. Az eseményeket hierarchikusan rendezheti, ha az alkalmazás az ID3DUserDefinedAnnotation felületet használja a renderelési parancsok csoportosításához.
További részletek:
| Szűrővezérlő | Leírás |
|---|---|
| Folyamat | Az önt érdeklő folyamat neve. A diagnosztikai munkamenet során a GPU-t használó összes folyamat szerepel ebben a legördülő listában. A folyamathoz társított szín a szál tevékenységének színe az ütemtervekben. |
| szál | Az önt érdeklő szálazonosító. A többszálas alkalmazásokban ezek az információk segíthetnek elkülöníteni azokat a szálakat, amelyek az Önt érdeklő folyamathoz tartoznak. A kijelölt szálhoz társított események minden ütemtervben ki vannak emelve. |
| Kijelző | Annak a megjelenítésnek a száma, amelynek a frissítési gyakorisága megjelenik. Egyes illesztőprogramok úgy konfigurálhatók, hogy több fizikai kijelzőt jelenítsen meg egyetlen, nagy virtuális kijelzőként. Előfordulhat, hogy csak egy kijelző jelenik meg a listában, még akkor is, ha a géphez több kijelző is csatolva van. |
| Szűrő | Az önt érdeklő kulcsszavak. A jelentés alsó részén lévő események csak azokat tartalmazzák, amelyek teljes egészében vagy részben egyeznek egy kulcsszóval. Több kulcsszót is megadhat pontosvesszővel elválasztva (;). |
| Hierarchia rendezése | Egy jelölőnégyzet, amely jelzi, hogy a felhasználói jelölőkkel definiált eseményhierarchiák megmaradnak-e vagy figyelmen kívül maradnak-e. |
A GPU-használati jelentés alsó részén található események listája az egyes események részleteit jeleníti meg.
| oszlop | Leírás |
|---|---|
| Esemény neve | A grafikus esemény neve. Az események általában egy CPU-szál ütemtervében és GPU-idővonal-eseményben lévő eseménynek felelnek meg. Előfordulhat, hogy az eseménynevek nem lesznek megjelenítve , ha a GPU-használat nem tudja meghatározni egy esemény nevét. További információkért tekintse meg a táblázatot követő megjegyzést. |
| CPU-indítás (ns) | Az az időpont, amikor az eseményt egy Direct3D API meghívásával kezdeményezték a CPU-n. Az idő mérése nanoszekundumban történik, az alkalmazás indításának időpontjához viszonyítva. |
| GPU indítása (ns) | Az esemény GPU-n való indításának időpontja. Az idő nanoszekundumban van megmérve, az alkalmazás indításának időpontjához viszonyítva. |
| GPU-időtartam (ns) | Az idő, nanoszekundumokban, amelyet az esemény befejezéséhez szükséges a GPU-n. |
| folyamatnév | Annak az alkalmazásnak a neve, amelyből az esemény érkezett. |
| Szálazonosító | Az a szálazonosító, amelyből az esemény származik. |
Fontos
Ha a GPU vagy az illesztőprogram nem támogatja a szükséges műszeres funkciókat, minden esemény nem hozzárendeltként jelenik meg. Ha ezt a problémát tapasztalja, frissítse a GPU-illesztőt, és próbálkozzon újra. További információ: Hardver- és illesztőprogram-támogatás a dokumentum végén.
GPU-használati beállítások
A GPU-használat eszközt úgy konfigurálhatja, hogy a profilkészítési adatok gyűjtését elhalasztsa ahelyett, hogy azonnal elkezdené az adatok gyűjtését az alkalmazás indításakor. Mivel a profilkészítési adatok mérete jelentős lehet, ez a művelet akkor hasznos, ha tudja, hogy az alkalmazás teljesítményének lassulásai csak később jelennek meg.
A profilkészítés elhalasztása az alkalmazás kezdetétől:
A főmenüben válassza aTeljesítmény és diagnosztika> lehetőséget (vagy a billentyűzeten nyomja le az Alt+F2 billentyűkombinációt).
A Teljesítmény és diagnosztika központban, a GPU-használat mellett válassza a beállítások hivatkozását.
A GPU profilozási konfiguráció területen az Általános tulajdonságlapon törölje a jelet a Profilozás megkezdése az alkalmazás indításakor jelölőnégyzetből a profilozás elhalasztásához.
Fontos
Jelenleg nem halogathatja a Direct3D 12-alkalmazások profilkészítését.
Miután futtatta az alkalmazást a GPU-használat eszköz alatt, egy további hivatkozás válik elérhetővé a GPU-használat eszköz ablakának alsó részén. Profilkészítési adatok gyűjtésének megkezdéséhez válassza a Start hivatkozást a További részletes GPU-használati adatok gyűjtésének megkezdése üzenetben.
Hardver- és illesztőprogram-támogatás
A következő GPU-hardverek és illesztőprogramok támogatottak:
| Beszállító | GPU-leírás | Illesztőprogram-verzió szükséges |
|---|---|---|
| Intel® | 4. generációs Intel® Core processzorok ('Haswell') - Intel® HD Graphics (GT1) - Intel® HD Graphics 4200 (GT2) - Intel® HD Graphics 4400 (GT2) - Intel® HD Graphics 4600 (GT2) - Intel® HD Graphics P4600 (GT2) - Intel® HD Graphics P4700 (GT2) - Intel® HD Graphics 5000 (GT3) - Intel® Iris™ Graphics 5100 (GT3) - Intel® Iris™ Pro Graphics 5200 (GT3e) |
(a legújabb illesztőprogramok használata) |
| AMD® | A legtöbb az AMD Radeon™ HD 7000 sorozat óta (nem tartalmazza az AMD Radeon™ HD 7350-7670-et) AMD Radeon™ GPU, AMD FirePro™ GPU-k és AMD FirePro GPU-gyorsítók Graphics Core Next (GCN) architektúrával AMD® E-sorozat és AMD A-sorozatú gyorsított feldolgozó egységek (APU-k) Grafikus Core Next (GCN) architektúrával ('Kaveri', 'Kabini', 'Temash', 'Beema', 'Mullins') |
14.7 RC3 vagy újabb |
| NVIDIA® | A legtöbb az NVIDIA® GeForce® 400-as sorozat óta NVIDIA® GeForce® GPU-k, NVIDIA Quadro® GPU-k és NVIDIA® Tesla™ GPU-gyorsítók Fermi™, Kepler™ vagy Maxwell™ architektúrával |
343.37 vagy újabb |
A több GPU-s konfigurációk, például az NVIDIA® SLI™ és az AMD Crossfire™ jelenleg nem támogatottak. A hibrid grafikus beállítások, például az NVIDIA® Optimus™ és az AMD Enduro™ támogatottak.