Impostare i profili di alimentazione per i dispositivi Azure Sphere

I profili di potenza di Azure Sphere consentono di regolare l'equilibrio tra prestazioni e risparmio energetico mentre l'applicazione di alto livello è in esecuzione su un dispositivo Azure Sphere.

È possibile specificare le preferenze sotto forma di profili di alimentazione discreti che definiscono l'equilibrio tra risparmio energetico e prestazioni.

Il sistema operativo Azure Sphere regola dinamicamente la frequenza della CPU per bilanciare consumo di energia e prestazioni in base al profilo di alimentazione specificato.

Nota

I profili di alimentazione non vengono mantenuti nei riavvii e devono sempre essere impostati all'avvio dell'applicazione.

Opzioni del profilo di risparmio energia

Sono disponibili tre opzioni per il profilo di alimentazione:

  • Risparmio di energia: indica al sistema che il risparmio energia deve avere una priorità al costo delle prestazioni per le applicazioni di alto livello.
  • Bilanciato: indica al sistema che il risparmio di energia e le prestazioni per le applicazioni di alto livello devono essere bilanciati in base al carico del sistema.
  • HighPerformance: indica al sistema che le migliori prestazioni possibili sono desiderate per l'applicazione di alto livello al costo di un maggiore consumo di energia.

Nota

Mentre il sistema rimarrà completamente funzionante a frequenze più basse, ci potrebbe essere un leggero impatto sulle prestazioni.

Configurazione dinamica dei profili di alimentazione

Per consentire all'applicazione di accedere alle funzioni del profilo di alimentazione in fase di esecuzione, è necessario dichiarare il valore SetPowerProfile per la funzionalità PowerControls nel manifesto dell'applicazione.

In fase di esecuzione, l'applicazione chiama PowerManagement_SetSystemPowerProfile() per specificare uno dei profili di alimentazione disponibili.

Includi file di intestazione

Le applicazioni che utilizzano profili di risparmio energia devono includere il file di intestazione di risparmio energia:

#include <applibs/powermanagement.h>