Identifikace horkých cest pomocí grafu plamene (C#, Visual Basic, C++, F#)
Nástroje pro profilaci sady Visual Studio pro využití procesoru a instrumentaci zahrnují zobrazení Flame Graph . Flame Graph vám pomůže identifikovat horké cesty v kódu zobrazením vizualizace stromu volání. Horká cesta je zásobník volání pro funkce, které používají nejvíce procesoru nebo nejvíce času, a často je dobrým místem pro vyhledání potenciálních optimalizací výkonu. Graf poskytuje vizuální přehled o tom, kde je čas strávený ve vaší aplikaci, a můžete kliknout na konkrétní uzly a podrobněji je prozkoumat.
Kurz, který ukazuje, jak zlepšit výkon pomocí grafu plamene, najdete v případové studii: Průvodce začátečníkem pro optimalizaci kódu. Informace o profileru procesoru naleznete v tématu Analýza výkonu pomocí profilace procesoru.
Prozkoumání horkých cest
Zobrazení Flame Graph je v zobrazení podrobností sestavy .diagession .
Spusťte relaci profilace pomocí nástroje využití procesoru nebo instrumentace.
Po zastavení relace profilace a načtení sestavy vyberte Otevřít podrobnosti.
V rozevíracím seznamu Aktuální zobrazení vyberte Plamenový graf .
Zobrazí se zobrazení Flame Graph.
Horká cesta je cesta kódu, která používá nejvíce procesoru nebo nejvíce času, když se podíváte dolů přes strom volání.
Ve výchozím nastavení data zobrazená v Grafu plamene představují stejná data jako v zobrazení stromu volání pro období shromažďování dat. Konkrétně pro využití procesoru zobrazuje celkové hodnoty procesoru . Tato hodnota je inkluzivní, takže zahrnuje využití procesoru (tj. čas výpočtu procesoru) používaný voláními funkce a všechny další funkce volané funkcí. Stejně tak graf pro instrumentaci zobrazuje hodnoty ekvivalentní sloupci Total (Celkem ) v zobrazení stromu volání.
Pokud ale vyberete uzel, stane se vybraný uzel novým směrný plán a použije 100 % šířky grafu plamene. Díky tomu můžete lépe vizualizovat složitý strom volání a zobrazovat dlouhé názvy, když jsou zkrácené nebo skryté. Tady je příklad grafu plamene, který zobrazuje složitější strom volání.
Pokud chcete zobrazit podrobnosti o libovolném uzlu, vyberte uzel.
Pokud se chcete vrátit do výchozího zobrazení, zvolte Obnovit náhled .
V sestavě profilace můžete také přejít na různá zobrazení tak, že vyberete uzel a pak v místní nabídce zvolíte možnost Zobrazit ve stromu volání.
Překlopení grafu plamene
Ve výchozím nastavení se graf plamene v nástroji zobrazuje vzhůru nohama nebo jako výsekový graf, kde osa y počítá hloubku zásobníku směrem dolů od nuly v horní části.
Standardní rozložení plamenového grafu můžete zobrazit kliknutím na Flip Flame Graph.
Navigace v grafu plamene
U komplexního grafu plamene můžete vizualizaci přiblížit výběrem konkrétních prvků.
V zobrazení Flame Graph můžete procházet kliknutím na uzel myší nebo pomocí klávesnice. Podporují se také následující klávesové zkratky.
Klávesová zkratka | Příkaz |
---|---|
Tab | Přechod na libovolný uzel |
Šipka nahoru/Šipka dolů | Přechod na nadřazený nebo podřízený uzel |
Šipka vpravo/vlevo | Přechod na partnerský vztah uzlu v zásobníku |
ENTER | Přiblížení (výběr) |
Escape | Oddálit |