Dela via


Samla in klientsidans prestandavarningar

Det finns många orsaker till att prestandan för Azure Remote Rendering kanske inte är så bra som du vill. Förutom ren renderingsprestanda på molnservern har nätverksanslutningens kvalitet en betydande inverkan på upplevelsen. Information om serverns prestanda finns i kapitlet Prestandafrågor på serversidan.

Det här kapitlet fokuserar på hur du identifierar potentiella flaskhalsar på klientsidan genom performance traces.

Komma igång

Om du inte har använt Windows-funktionerna performance tracing tidigare nämner det här avsnittet de mest grundläggande termerna och programmen för att komma igång.

Installation

De program som används för spårning med Azure Remote Rendering (ARR) är verktyg för generell användning som kan användas för all Windows-utveckling. De tillhandahålls via Windows Performance Toolkit. Hämta den här verktygslådan genom att ladda ned Windows Assessment and Deployment Kit.

Terminologi

Ett antal termer är viktiga när du pratar om prestandaspårningar. De viktigaste är:

  • Event Tracing för Windows (ETW)
    ETW är det övergripande namnet på den effektiva spårningsanläggningen på kernelnivå som är inbyggd i Windows. Program som stöder ETW genererar händelser till loggåtgärder som kan hjälpa till att spåra prestandaproblem, vilket gör att namnhändelsespårningen. Som standard genererar operativsystemet redan händelser för saker som diskåtkomst, aktivitetsväxlar och sådant. Program som ARR genererar dessutom anpassade händelser, till exempel om borttagna ramar, nätverksfördröjning osv.

  • Event Trace Logging (ETL)
    ETL beskriver en samlad (loggad) spårning och används därför vanligtvis som filnamnstillägg för filer som lagrar spårningsdata. När du gör en spårning har du vanligtvis en *.etl-fil efteråt.

  • Windows Performance Recorder (WPR)
    WPR är namnet på programmet som startar och stoppar inspelningen av händelsespårningar. WPR tar en profilfil (*.wprp) som konfigurerar vilka exakta händelser som ska loggas. wprp En sådan fil tillhandahålls med ARR SDK. När du gör spårningar på en stationär dator kan du starta WPR direkt. När du gör en spårning på HoloLens går du vanligtvis igenom webbgränssnittet i stället.

  • Windows Performance Analyzer (WPA)
    WPA är namnet på GUI-programmet som används för att öppna *.etl-filer och söka igenom data för att identifiera prestandaproblem. MED WPA kan du sortera data efter olika kriterier, visa data på flera sätt, gräva ned i information och korrelera information.

  • Perfetto
    Perfetto är ett systemprofilerings- och programspårningsverktyg för Android och Linux, som är tillgängligt sedan Android 9 Pie. Perfetto är också aktiverat på Meta Quest- och Quest 2-enheter (när utvecklarläget är aktiverat) sedan v27 OS. Användargränssnittet för Perfetto Trace Viewer kan användas för att öppna och analysera resulterande Perfetto-spårningar.

Även om ETL-spårningar kan skapas på valfri Windows-enhet (lokal dator, HoloLens, molnserver osv.), sparas de vanligtvis på disk och analyseras med WPA på en stationär dator. ETL-filer kan skickas till andra utvecklare så att de kan ta en titt. ETL-spårningar kan innehålla känslig information, till exempel filsökvägar och IP-adresser. Du kan använda ETW på två sätt: för att registrera spårningar eller för att analysera spårningar. Inspelningsspårningar är raka och kräver minimal konfiguration. Att analysera spårningar å andra sidan kräver en anständig förståelse för både WPA-verktyget och det problem som du undersöker. Allmänt material för inlärning av WPA ges senare och riktlinjer för hur du tolkar ARR-specifika spårningar.

Registrera en spårning på en lokal dator

Använd spårningar på datorn för att antingen bekanta dig med verktygen eller om du har ett problem där maskinvarubegränsningarna för HoloLens inte är relevanta. Annars kan du gå vidare till avsnittet Spela in en spårning i ett HoloLens-avsnitt . Särskilt ARR-prestandaproblem bör endast spåras direkt på en HoloLens.

WPR-konfiguration

  1. Windows Performance Recorder Starta från Start-menyn.
  2. Expandera Fler alternativ.
  3. Välj Lägg till profiler....
  4. Välj filen AzureRemoteRenderingNetworkProfiling.wprp. Du hittar den här filen i ARR SDK under Verktyg/ETLProfiles. Profilen visas i WPR under Anpassade mått. Kontrollera att det är den enda aktiverade profilen.
  5. Expandera Första nivåns sortering.
    • Om allt du vill göra är att samla in en snabb spårning av ARR-nätverkshändelser inaktiverar du det här alternativet.
    • Om du behöver korrelera ARR-nätverkshändelser med andra systemegenskaper, till exempel PROCESSOR- eller minnesanvändning, aktiverar du det här alternativet.
    • Spårningar med det här alternativet aktiverat är troligen flera gigabyte i storlek och kan ta lång tid att spara och öppna i WPA.

Därefter bör WPR-konfigurationen se ut så här:

Screenshot of the Windows Performance Recorder with a selected AzureRemoteRenderingNetworkProfiling profile.

Spela in

Välj Starta för att börja spela in en spårning. Du kan starta och stoppa inspelningen när som helst. du behöver inte stänga programmet innan du gör det. Som du ser behöver du inte ange vilket program som ska spåras, eftersom ETW registrerar en spårning för hela systemet. Filen wprp anger vilka typer av händelser som ska registreras.

Välj Spara för att stoppa inspelningen och ange var ETL-filen ska lagras.

Nu har du en ETL-fil som du kan öppna i WPA.

Spela in en spårning på en HoloLens

Om du vill registrera en spårning på en HoloLens startar du enheten och anger dess IP-adress i en webbläsare för att öppna enhetsportalen.

Screenshot of the Performance Tracing webpage in the HoloLens Device Portal.

  1. Till vänster navigerar du till Prestandaprestandaspårning>.
  2. Välj Anpassade profiler.
  3. Välj Browse....
  4. Välj filen AzureRemoteRenderingNetworkProfiling.wprp. Du hittar den här filen i ARR SDK under Verktyg/ETLProfiles.
  5. Välj Starta spårning.
  6. HoloLens spelar nu in en spårning. Se till att utlösa de prestandaproblem som du vill undersöka. Välj sedan Stoppa spårning.
  7. Spårningen visas sedan längst ned på webbsidan. Om du vill ladda ned ETL-filen väljer du diskikonen till höger.

Nu har du en ETL-fil som du kan öppna i WPA.

Registrera en spårning på en Meta Quest-enhet

Om du vill registrera en spårning på en Quest behöver du adb-kommandoradsverktyget.

  1. Kontrollera att utvecklarläget är aktiverat i ditt uppdrag.
  2. Kontrollera att adb har behörighet att komma åt enheten genom att köra adb devices och verifiera att enheten visas.
  3. Leta upp spårningskonfigurationsfilen AzureRemoteRenderingPerfetto.txt fil från ARR SDK under Verktyg/ETLProfiles.
    • Som standard är spårningskonfigurationen konfigurerad att köras i 30 sekunder. Den här konfigurationen kan ändras genom att redigera duration_ms: 30000 värdet i AzureRemoteRenderingPerfetto.txt fil.
  4. På PowerShell kör du $config = cat "AzureRemoteRenderingPerfetto.txt" | adb shell perfetto -c - $config --txt --o "/data/misc/perfetto-traces/trace".
  5. Du bör se utdata som liknar den här raden.
    [522.149] perfetto_cmd.cc:825     Connected to the Perfetto traced service, TTL: 30s
    
  6. Quest-enheten registrerar nu en spårning. Starta programmet och utlös det problem som du vill undersöka.
  7. När spårningsinspelningen är klar bör du se utdata som liknar den här raden.
    [552.637] perfetto_cmd.cc:946     Trace written into the output file
    
  8. Slutligen kan du hämta filen från enheten genom att köra adb pull "/data/misc/perfetto-traces/trace" "outputTrace.pftrace".

Nu har du en Perfetto-spårningsfil som du kan öppna i användargränssnittet för Perfetto Trace Viewer.

Analysera spårningar med WPA

Grunderna i WPA

Windows Prestandaanalys är standardverktyget för att öppna ETL-filer och inspektera spårningarna. En förklaring av hur WPA fungerar ligger utanför omfånget för den här artikeln. Ta en titt på de här resurserna för att komma igång:

  • Titta på introduktionsvideorna för en första översikt.
  • Titta på fliken Komma igång i själva WPA, vilket förklarar vanliga steg. Ta en titt på de tillgängliga artiklarna. Särskilt under "Visa data" får du en snabb introduktion till hur du skapar grafer för specifika data.
  • Titta igenom den utmärkta informationen på denna webbplats, men inte allt är relevant för nybörjare.

Diagramdata

För att komma igång med ARR-spårning är följande delar bra att veta.

Screenshot of an example graph in the Windows Performance Analyzer tool.

Bilden visar en tabell med spårningsdata och en grafrepresentation av samma data.

Notera den gula (gyllene) stapeln och den blå stapeln i tabellen längst ned. Du kan dra dessa staplar och placera dem på valfri plats.

Alla kolumner till vänster om det gula fältet tolkas som nycklar. Nycklar används för att strukturera trädet i det övre vänstra fönstret. Här har vi två nyckelkolumner , "Providernamn" och "Uppgiftsnamn". Så trädstrukturen i det övre vänstra fönstret är två nivåer djup. Om du ändrar ordning på kolumnerna eller lägger till eller tar bort kolumner från nyckelområdet ändras strukturen i trädvyn.

Kolumner till höger om det blå fältet används för grafvisningen i det övre högra fönstret. För det mesta används bara den första kolumnen, men vissa diagramlägen kräver flera datakolumner. För att linjediagram ska fungera måste aggregeringsläget för kolumnen anges. Använd "Genomsnittlig" eller "Max". Aggregeringsläget används för att fastställa grafens värde vid en viss pixel, när en pixel täcker ett intervall med flera händelser. Den här egenskapen kan observeras genom att ställa in aggregering till "Summa" och sedan zooma in och ut.

Kolumnerna i mitten har ingen särskild betydelse.

Screenshot of the Generic Events View Editor in the Windows Performance Analyzer tool.

I redigeraren för allmän händelsevy kan du konfigurera alla kolumner som ska visas, aggregeringsläget, sortering och vilka kolumner som används som nycklar eller diagram. I exempelbilden är Fält 2 aktiverat och Fält 3 – 6 är inaktiverat. Fält 2 är vanligtvis det första anpassade datafältet för en ETW-händelse och därmed för ARR-händelser för "FrameStatistics", som representerar ett visst värde för nätverksfördröjning. Aktivera andra fältkolumner för att se ytterligare värden för den här händelsen.

Förinställningar

För att kunna analysera en spårning korrekt måste du ta reda på ditt eget arbetsflöde och önskad datavisning. Men för att kunna få en snabb översikt över DE ARR-specifika händelserna inkluderar vi Windows Software Protection Platform-profil och förinställningar i mappen Verktyg/ETLProfiles. Om du vill läsa in en fullständig profil väljer du Profiler Använd... från WPA-menyraden eller öppnar panelen Mina förinställningar (Fönster > Mina förinställningar) och väljer Importera>. Den förra konfigurerar en fullständig WPA-konfiguration som i bilden under det här stycket. Det senare gör bara förinställningar för de olika vykonfigurationerna tillgängliga och gör att du snabbt kan öppna en vy för att titta på en specifik del av ARR-händelsedata.

Screenshot of the Windows Performance Analyzer tool with the ARR presets applied.

Bilden visar vyer över olika ARR-specifika händelser plus en vy över den totala CPU-användningen.

Nästa steg