Vytvoření trasování výkonu na straně klienta
Existuje mnoho důvodů, proč výkon služby Azure Remote Rendering nemusí být tak dobrý, jak potřebujete. Kromě čistého výkonu vykreslování na cloudovém serveru má zejména kvalita síťového připojení významný vliv na prostředí. Pokud chcete profilovat výkon serveru, přečtěte si kapitolu Dotazy na výkon na straně serveru.
Tato kapitola se zaměřuje na to, jak identifikovat potenciální kritické body na straně klienta prostřednictvím performance traces.
Začínáme
Pokud s funkcemi Windows performance tracing začínáte, v této části najdete ty nejzákladnější pojmy a aplikace, které vám pomůžou začít.
Instalace
Aplikace používané k trasování pomocí služby Azure Remote Rendering (ARR) jsou nástroje pro obecné účely, které je možné použít pro veškerý vývoj pro Windows. Poskytují se prostřednictvím sady nástrojů Windows Performance Toolkit. Pokud chcete získat tuto sadu nástrojů, stáhněte sadu Windows Assessment and Deployment Kit.
Terminologie
Při komunikaci o trasování výkonu je důležitá řada termínů. Nejdůležitější jsou:
Event Tracing pro Windows (ETW)
EtW je zastřešující název efektivního trasování na úrovni jádra, který je integrovaný do Windows. Aplikace, které podporují trasování událostí pro Windows, generují události do protokolu akcí, které můžou pomoct sledovat problémy s výkonem, a proto trasování událostí názvu. Ve výchozím nastavení operační systém již generuje události pro věci, jako jsou přístupy k diskům, přepínače úloh a takové. Aplikace, jako je ARR, navíc generují vlastní události, například o vynechaných rámcích, prodlevě sítě atd.Event Trace Logging (ETL)
ETL popisuje shromážděné (protokolované) trasování, a proto se obvykle používá jako přípona souboru pro soubory, které ukládají data trasování. Proto při trasování obvykle máte *.etl soubor později.Windows Performance Recorder (WPR)
WPR je název aplikace, která se spustí a zastaví záznam trasování událostí. WPR přebírá soubor profilu (*.wprp), který konfiguruje, které přesné události se mají protokolovat.wprp
Takový soubor je k dispozici se sadou ARR SDK. Když provádíte trasování na stolním počítači, můžete WPR spustit přímo. Při trasování na HoloLensu obvykle procházíte webové rozhraní.Windows Performance Analyzer (WPA)
WPA je název aplikace grafického uživatelského rozhraní, která se používá k otevření souborů *.etl a k prostojování dat k identifikaci problémů s výkonem. WPA umožňuje řadit data podle různých kritérií, zobrazit data několika způsoby, prozkoumat podrobnosti a korelovat informace.Perfetto
Perfetto je nástroj pro profilaci systému a trasování aplikací pro Android a Linux, který je k dispozici od androidu 9 Pie. Perfetto je také povolen na zařízeníCh Meta Quest a Quest 2 (pokud je povolený vývojářský režim), od verze 27 operačního systému. Uživatelské rozhraní prohlížeče trasování Perfetto lze použít k otevření a analýze výsledných trasování Perfetto.
Trasování ETL je možné vytvořit na jakémkoli zařízení s Windows (místní počítač, HoloLens, cloudový server atd.), obvykle se ukládají na disk a analyzují se pomocí WPA na stolním počítači. Soubory ETL je možné odeslat ostatním vývojářům, aby měli přehled. Trasování ETL může obsahovat citlivé informace, jako jsou cesty k souborům a IP adresy. EtW můžete použít dvěma způsoby: k zaznamenání trasování nebo k analýze trasování. Záznam trasování je přímý a vyžaduje minimální nastavení. Analýza trasování na druhé straně vyžaduje slušné pochopení nástroje WPA i problému, který zkoumáte. Obecné materiály pro výuku WPA jsou uvedeny později a pokyny k interpretaci trasování specifických pro ARR.
Záznam trasování na místním počítači
Pomocí trasování na počítači se seznamte s nástroji nebo pokud máte problém, kdy hardwarová omezení HoloLensu nejsou relevantní. Jinak můžete přeskočit na záznam trasování v oddílu HoloLens . Zejména problémy s výkonem ARR by měly být trasovány pouze přímo na HoloLensu.
Konfigurace WPR
- Spusťte příkaz Windows Performance Recorder z nabídky Start.
- Rozbalit další možnosti
- Vyberte Přidat profily....
- Vyberte soubor AzureRemoteRenderingNetworkProfiling.wprp. Tento soubor najdete v sadě ARR SDK v části Nástroje/ETLProfiles. Profil je uvedený ve WPR v části Vlastní měření. Ujistěte se, že je to jediný povolený profil.
- Rozbalte třídění první úrovně.
- Pokud chcete všechno udělat, zaznamenejte rychlé trasování síťových událostí ARR, zakažte tuto možnost.
- Pokud potřebujete korelovat síťové události ARR s jinými charakteristikami systému, jako je využití procesoru nebo paměti, povolte tuto možnost.
- Trasování s touto povolenou možností je pravděpodobně více gigabajtů a může trvat dlouhou dobu, než se uloží a otevře v WPA.
Konfigurace WPR by pak měla vypadat takto:
Nahrávání
Výběrem možnosti Start zahájíte záznam trasování. Nahrávání můžete kdykoli spustit a zastavit; Před tím aplikaci nemusíte zavřít. Jak vidíte, nemusíte zadávat, která aplikace se má trasovat, protože EtW zaznamenává trasování pro celý systém. Soubor wprp
určuje, které typy událostí se mají zaznamenávat.
Výběrem možnosti Uložit zastavíte nahrávání a určíte, kam se má soubor ETL uložit.
Nyní máte soubor ETL, který můžete otevřít v WPA.
Záznam trasování na HoloLensu
Pokud chcete zaznamenat trasování na HoloLensu, spusťte zařízení a zadejte jeho IP adresu do prohlížeče, aby se otevřel portál zařízení.
- Vlevo přejděte na Trasování výkonu výkonu>.
- Vyberte Vlastní profily.
- Vyberte možnost Browse....
- Vyberte soubor AzureRemoteRenderingNetworkProfiling.wprp. Tento soubor najdete v sadě ARR SDK v části Nástroje/ETLProfiles.
- Vyberte Spustit trasování.
- HoloLens teď nahrává trasování. Nezapomeňte aktivovat problémy s výkonem, které chcete prozkoumat. Pak vyberte Zastavit trasování.
- Trasování se pak zobrazí v dolní části webové stránky. Pokud chcete stáhnout soubor ETL, vyberte ikonu disku na pravé straně.
Nyní máte soubor ETL, který můžete otevřít v WPA.
Záznam stopy na zařízení Meta Quest
K zaznamenání trasování na Questu potřebujete nástroj příkazového řádku adb.
- Ujistěte se, že je ve vašem Questu povolený vývojářský režim.
- Spuštěním a ověřením
adb devices
, že je zařízení uvedené, se ujistěte, že má adb oprávnění pro přístup k vašemu zařízení. - Vyhledejte konfigurační soubor trasování AzureRemoteRenderingPerfetto.txt soubor ze sady ARR SDK v části Tools/ETLProfiles.
- Ve výchozím nastavení je konfigurace trasování nastavená tak, aby běžela po dobu 30 sekund. Tuto konfiguraci lze upravit úpravou
duration_ms: 30000
hodnoty v souboru AzureRemoteRenderingPerfetto.txt .
- Ve výchozím nastavení je konfigurace trasování nastavená tak, aby běžela po dobu 30 sekund. Tuto konfiguraci lze upravit úpravou
- V PowerShellu spusťte
$config = cat "AzureRemoteRenderingPerfetto.txt" | adb shell perfetto -c - $config --txt --o "/data/misc/perfetto-traces/trace"
příkaz . - Měl by se zobrazit výstup podobný tomuto řádku.
[522.149] perfetto_cmd.cc:825 Connected to the Perfetto traced service, TTL: 30s
- Zařízení Quest teď nahrává stopu. Spusťte aplikaci a aktivujte problém, který chcete prozkoumat.
- Po dokončení záznamu trasování by se měl zobrazit výstup podobný tomuto řádku.
[552.637] perfetto_cmd.cc:946 Trace written into the output file
- Nakonec můžete stáhnout soubor ze zařízení spuštěním
adb pull "/data/misc/perfetto-traces/trace" "outputTrace.pftrace"
příkazu .
Nyní máte trasovací soubor Perfetto, který můžete otevřít v uživatelském rozhraní Prohlížeče trasování Perfetto.
Analýza trasování pomocí WPA
Základy WPA
Windows Analyzátor výkonu je standardní nástroj pro otevření souborů ETL a kontrolu trasování. Vysvětlení, jak WPA funguje, je mimo rozsah tohoto článku. Pokud chcete začít, podívejte se na tyto zdroje informací:
- Podívejte se na úvodní videa , kde najdete první přehled.
- Podívejte se na kartu Začínáme v samotném WPA, která vysvětluje běžné kroky. Podívejte se na dostupné články. Zejména v části Zobrazit data získáte rychlý úvod k vytváření grafů pro konkrétní data.
- Projděte si vynikající informace na tomto webu, ale ne všechny je relevantní pro začátečníky.
Grafování dat
Pokud chcete začít s trasováním ARR, je dobré vědět následující části.
Na obrázku je tabulka trasovacích dat a znázornění grafů stejných dat.
V tabulce dole si všimněte žlutého (zlatého) pruhu a modrého pruhu. Tyto pruhy můžete přetáhnout a umístit je na libovolné místo.
Všechny sloupce vlevo od žlutého pruhu se interpretují jako klíče. Klíče slouží ke strukturování stromu v levém horním okně. Tady máme dva klíčové sloupce, "Název zprostředkovatele" a "Název úkolu". Struktura stromu v levém horním okně je tedy dvě úrovně hluboko. Pokud změníte pořadí sloupců nebo přidáte nebo odeberete sloupce z oblasti klíče, struktura ve stromovém zobrazení se změní.
Sloupce napravo od modrého pruhu se používají pro zobrazení grafu v pravém horním okně. Ve většině případů se používá pouze první sloupec, ale některé režimy grafu vyžadují více sloupců dat. Aby spojnicové grafy fungovaly, musí být u daného sloupce nastavený režim agregace. Použijte Avg nebo Max. Režim agregace slouží k určení hodnoty grafu na daném pixelu, když pixel pokrývá oblast s více událostmi. Tuto vlastnost lze pozorovat nastavením agregace na součet a následným přiblížením nebo oddálením.
Sloupce uprostřed nemají žádný zvláštní význam.
V Editoru obecného zobrazení událostí můžete nakonfigurovat všechny sloupce, které se mají zobrazit, režim agregace, řazení a sloupce, které se používají jako klíče nebo pro grafy. Na obrázku příkladu je pole 2 povolené a pole 3 – 6 je zakázané. Pole 2 je obvykle prvním vlastním datovým polem události ETW, a proto pro události ARR "FrameStatistics", které představují hodnotu latence sítě. Pokud chcete zobrazit další hodnoty této události, povolte další sloupce Pole.
Presets
Pokud chcete správně analyzovat trasování, musíte zjistit vlastní pracovní postup a upřednostňované zobrazení dat. Abychom ale mohli získat rychlý přehled o událostech specifických pro ARR, zahrneme do složek Tools/ETLProfiles profil platformy Windows Software Protection a přednastavené soubory. Pokud chcete načíst úplný profil, vyberte v řádku nabídek WPA možnost Použít profily > nebo otevřete panel Předvolby (Předvolby okna>) a vyberte Importovat. První nastavení nastaví úplnou konfiguraci WPA jako na obrázku pod tímto odstavcem. Druhý z nich zpřístupňuje přednastavení pouze pro různé konfigurace zobrazení a umožňuje rychle otevřít zobrazení a podívat se na konkrétní část dat událostí ARR.
Obrázek znázorňuje zobrazení různých událostí specifických pro ARR a zobrazení celkového využití procesoru.