Himanshu KumarSoftware Engineer
← projects

Vivobook Smart Power

2026

Linux utility

A small background service that switches a Linux laptop's power profile based on what it's doing. A rough stand-in for Windows' Dynamic mode.

overview

A background service for Linux laptops. It samples CPU and NVIDIA GPU load every 10 seconds and talks to power-profiles-daemon through powerprofilesctl to pick the right profile.

the problem

Switching profiles on every load spike makes a machine twitchy, and cooling has to stay with the firmware, not with a script.

how it works

Heavy load has to last about 30 seconds before it switches to performance, and the load has to be gone for about 2 minutes before it drops back to balanced. A hot CPU package forces balanced until it cools down. Fan speed is never touched.

result

Works as intended on the one laptop it has been tested on. It is experimental (v0.1.0), and the README lists its limitations.

  • Samples CPU and GPU every 10 seconds
  • 30 s of sustained load before switching up
  • Never touches fan control

built with

Shell, power-profiles-daemon, NVIDIA GPU stats