Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato příručka vám ukáže, jak zlepšit způsob, jakým vaše aplikace pro Windows spotřebovává napájení, a nabízí principy, které vám pomůžou zlepšit celkový výkon zařízení a životnost baterie.
Nejzásadnějšími principy pro zlepšení spotřeby energie je zajistit, aby aplikace byla na pozadí, ale ne:
- používat systémové prostředky,
- probuzení procesoru pomocí časovačů,
- Probuďte procesor čekáním na události vsync.
Být "na pozadí" znamená, že aplikace není uživateli viditelná ani zvuková. Mělo by existovat jen málo důvodů, pokud vůbec nějaké, proč probouzet procesor nebo využívat systémové prostředky na pozadí. Kontrola, jestli aplikace tyto události spouští a řeší příčinu, může výrazně zlepšit spotřebu energie, životnost baterie a snížit emise uhlíku, které budou výsledkem používání vaší aplikace zákazníkům.
Pokud chcete zkontrolovat, jestli se procesor neprobouzí k nepotřebné práci, když se vaše aplikace nepoužívá, můžete zachytit a analyzovat trasování pomocí Windows Performance Analyzer (WPA). Projdeme si kroky vysvětlující, jak to udělat níže.
Zachytit záznam a zkontrolovat nepotřebnou práci
Před zachycením trasování je důležité nastavit správné podmínky při spuštění aplikace, abyste mohli analyzovat, jestli se provádí zbytečná práce, která může zbytečně spotřebovávat energii. Můžete také chtít spustit více sledování, abyste mohli aplikaci otestovat v různých podmínkách.
Nastavení
Dostaňte testovací zařízení do nečinného stavu otevřením Správce úloh a ujistěte se, že využití procesoru je menší než 5%. Tím minimalizujete rušení měření a poskytnete rozumné velikostní stopy.
Spusťte aplikaci a přejděte do zobrazení, které se má běžně používat.
Minimalizujte aplikaci. Pokud je okno vaší aplikace zcela zakryté za jinými okny a když je vaše aplikace v popředí, po určité době nečinnosti uživatele zopakujte následující kroky, abyste zajistili, že aplikace nezahájí zbytečnou činnost.
Měření a vyhodnocení využití procesoru na pozadí
Otevřete
příkazový řádek (PowerShell nebo příkazový řádek)vrežimu správce. (Pokud neběží v režimu správce, může se zobrazit kód chyby: 0xc5585011, nepovedlo se povolit zásadu profilování výkonu systému.) Zadejte příkaz:
wpr -start power -filemodeNechte zařízení nečinné po dobu 5 minut.
Zadejte příkaz:
wpr -stop idletrace.etlPokud chcete trasování otevřít pomocí Windows Performance Analyzer (WPA) , zadejte příkaz:
wpa.exe idletrace.etlOtevřete graf
výpočetních využití procesoru (přesné). Přejděte na svůj proces (nebo, pokud máte model s více procesy, všechny procesy související s vaší aplikací) a vyhodnoťte Cswitch count, "Využití procesorem". V ideálním případě se jedná o co nejblíže 0, když je aplikace na pozadí. Pohled na zásobníky je skvělý způsob, jak najít, kde se prostředky používají a jak je vylepšit.
Vyhledejte nadměrná probuzení přidáním zásobníku "Nové vlákno", abyste zjistili, na kterém zásobníku se vlákno probudilo.
Otevřete graf výpočetní>využití procesoru (vzorkované). Sledujte problémy s využitím procesoru vyhodnocením toho, kde probíhá provádění času v kódu.
Měření a vyhodnocení čekání na synchronizaci svislého vyrovnání (vsync) v pozadí
Poznámka:
Než prozkoumáte tento pokročilejší scénář, zaměřte se na základní využití procesoru v předchozí části.
Otevřete příkazový řádek (PowerShell nebo příkazový řádek) v režimu správce.
Zadejte příkaz:
wpr -start gpu -filemodeNechte zařízení nečinné po dobu 5 minut.
Zadejte příkaz:
wpr -stop gputrace.etlPokud chcete trasování otevřít pomocí Windows Performance Analyzer (WPA) , zadejte příkaz:
wpa.exe gputrace.etlOtevřete graf obecné události v rámci aktivity systému
. - Vyfiltrujte události Microsoft-Windows-Dxgkrnl.
- Přetáhněte sloupec Proces, aby se stal druhým sloupcem.
- Zkontrolujte, jestli voláte do waitForVsync. Například prostřednictvím rozhraní API, jako je IDXGIOutput::WaitForVBlank (dxgi.h) prostřednictvím události
WaitForVerticalBlankEventInternal.
Graf WPA

Další informace najdete v článku Použití analyzátoru výkonu systému Windows k analýze problémů s moderním pohotovostním režimem.
Dodatečné zdroje
Windows developer