A10-4600M with Radeon HD7660G APU does not have a good built-in throttling mechanism, combine it with poor cooling solution and you have a laptop that reboots frequently due to overheating.
This tool attempts to elimitate this behavior by periodically checking the APU temperature and limitting the CPU's max frequency and turbo boosting when it hits a threshold. The frequency and turbo are re-established when temperature falls back to safe range.
- APU temperature is fetched using values exposed by OpenHardwareMonitor via WMI
- APU max frequency and turbo boost are set to the current Window's powerprofile via powercfg CLI
- Set Max stepping
- Disarm manager on error
- Rework manager logic to be completely agnostic to processor powerlimits, supporting processor profiles
- Unit Tests
- Introduce configuration for hardcoded values
To build without console window, use: go build -ldflags "-H=windowsgui"