Megosztás a következőn keresztül:


Az energiafogyasztás és az akkumulátor üzemidejének javítása a háttérmunka minimalizálásával

Ez az útmutató bemutatja, hogyan javíthatja a Windows-alkalmazás energiafelhasználását, és alapelveket kínál az eszközök általános teljesítményének és akkumulátor-élettartamának javításához.

Az energiafogyasztás javításának legalapvetőbb alapelvei annak biztosítása, hogy amíg az alkalmazás a háttérben van, nem:

  • rendszererőforrások használata,
  • ébresztse fel a processzort időzítőkkel,
  • vsync eseményekre való várakozással felébreszti a processzort.

A "háttérben" azt jelenti, hogy az alkalmazás nem látható és nem hallható a felhasználó számára. A processzor felébresztésének vagy a rendszererőforrások háttérbeli felhasználásának kevés oka lehet, ha van ilyen. Annak ellenőrzése, hogy az alkalmazás aktiválja-e ezeket az eseményeket, és kezeli-e az okot, jelentősen javíthatja az alkalmazás energiafogyasztását, az akkumulátor üzemidejét, és csökkentheti az alkalmazást használó ügyfelek által okozott károsanyag-kibocsátást.

Annak ellenőrzéséhez, hogy a processzor nem ébred fel szükségtelen munkához, miközben az alkalmazás nincs használatban, rögzíthet és elemezhet egy nyomkövetést a Windows Teljesítményelemző (WPA) használatával. Az alábbiakban bemutatjuk, hogyan teheti ezt meg.

Nyomkövetés rögzítése és a szükségtelen munka ellenőrzése

Fontos, hogy az alkalmazás futtatásakor megfelelő feltételeket állítson be, mielőtt rögzítené a nyomkövetést annak elemzéséhez, hogy olyan szükségtelen munkát végeznek-e, amely áramkiürítést okozhat. Emellett több nyomkövetést is érdemes futtatnia, hogy az alkalmazást különböző feltételek mellett tesztelje.

Setup

  1. Nyissa meg a Feladatkezelőt, és győződjön meg arról, hogy a processzorhasználat kevesebb mint 5%. Ezzel minimalizálja a mérési interferenciát, és ésszerű méretkövetést biztosít.

  2. Indítsa el az alkalmazást, és lépjen egy várhatóan gyakran használt nézethez.

  3. Az alkalmazás minimalizálása. *Előfordulhat, hogy meg szeretné ismételni a következő lépéseket, miközben az alkalmazásablak teljesen el van zárva (nem látható) a többi ablak mögött, és ha az alkalmazás az előtérben van, miután a felhasználó nem lép interakcióba, annak érdekében, hogy az alkalmazás ne kezdeményezhessen felesleges munkát.

A processzorhasználat mérése és kiértékelése a háttérben

  1. Nyisson meg egy parancssort (PowerShell vagy parancssor) rendszergazda módban. (Ha nem rendszergazdai módban fut, hibaüzenet jelenhet meg: 0xc5585011: "Nem sikerült engedélyezni a szabályzatot a rendszer teljesítményének profilkészítéséhez.")

  2. Adja meg a parancsot: wpr -start power -filemode

  3. Hagyja tétlen állapotban az eszközt 5 percig.

  4. Adja meg a parancsot: wpr -stop idletrace.etl

  5. A nyomkövetés windowsos teljesítményelemzővel (WPA) való megnyitásához írja be a következő parancsot: wpa.exe idletrace.etl

  6. Nyissa meg a Számítási>processzorhasználat (pontos) gráfot.

    • Lépjen a folyamatra (vagy ha többfolyamat-modellel rendelkezik, az alkalmazáshoz kapcsolódó összes folyamatot), és értékelje ki a Cswitch-számot, a "CPU-kihasználtságot". Ideális esetben ezek a lehető legközelebb vannak a 0-hoz, amíg az alkalmazás a háttérben van. A halmok megtekintése nagyszerű módja annak, hogy megtudja, hol használják az erőforrásokat, és hogyan fejlesztheti azokat.

    • Keressen túlzott ébredéseket egy "Új szál verem" hozzáadásával, hogy lássa, melyik veremen ébredt a szál.

    WPA-diagram a processzorfolyamatról, a darabszámról és a használat százalékos arányáról

  7. Nyissa meg a számítási>CPU-használat (mintául szolgáló) gráfot . A processzorhasználati problémák felderítése azáltal, hogy kiértékeli, hol tölt el időt a kód végrehajtása során.

Vsync-várakozás mérése és kiértékelése a háttérben

Megjegyzés:

A speciálisabb forgatókönyv vizsgálata előtt az előző szakaszban az alapszintű processzorhasználatra összpontosítson.

  1. Nyisson meg egy parancssort (PowerShell vagy parancssor) rendszergazda módban.

  2. Adja meg a parancsot: wpr -start gpu -filemode

  3. Hagyja tétlen állapotban az eszközt 5 percig.

  4. Adja meg a parancsot: wpr -stop gputrace.etl

  5. A nyomkövetés windowsos teljesítményelemzővel (WPA) való megnyitásához írja be a következő parancsot: wpa.exe gputrace.etl

  6. Nyissa meg a System Activity>Generic eseménygráfot .

    • Szűrjön a "Microsoft-Windows-Dxgkrnl" eseményekre.
    • Húzza át a Folyamat oszlopot a második oszlopba.
    • Ellenőrizze, hogy használja-e a WaitForVsync funkciót. Például az OLYAN API-kon keresztül, mint az IDXGIOutput::WaitForVBlank (dxgi.h) az WaitForVerticalBlankEventInternal eseményen keresztül.

    WPA-diagram az MS Edge webview2 eseményéről

További információ: A Windows Teljesítményelemző használata a modern készenléti problémák elemzéséhez.

További erőforrások