Lightweight Windows control tool for Asus laptops that replaces most of Armoury Crate's performance modes, GPU modes, fan curves and lighting features.
MiaAI-Lab/sparkLimiter
A shell tool that caps the GPU graphics clock on all your NVIDIA DGX Spark machines and re-applies the limit at boot via systemd.
- Stars
- 105
- Forks
- 12
- Open issues
- 0
- Last commit
- 24 days ago
What is it?
sparkLimiter caps the maximum GPU graphics clock on NVIDIA DGX Spark machines. It discovers Sparks on your network using ssh config, known_hosts, mDNS, and the neighbour table, then runs nvidia-smi -lgc with a configurable range (default 0,2200 MHz) on each one selected.
Since nvidia-smi -lgc does not persist across reboots, the tool also installs a oneshot systemd service on each host that re-applies the limit at boot. Re-running the script overwrites and restarts the unit, and the --uninstall option removes the service and resets clocks.
Discovery only probes hosts over key-based ssh, and only counts machines reporting a GB10 GPU or DGX Spark product name. Applying changes uses normal ssh host-key checking, and hosts without a working NVIDIA driver are left unchanged.
Key features
- 01Auto-discovers DGX Spark machines via ssh config, known_hosts, mDNS, and ARP neighbours.
- 02Applies a configurable GPU clock range, defaulting to 0,2200 MHz, to selected hosts.
- 03Installs a systemd service so the clock cap is re-applied after every reboot.
- 04Interactive selection of hosts, or non-interactive mode with --yes for scripts.
- 05Provides an --uninstall option that removes the service and resets clocks.
Use cases
- Lowering power draw, heat, and fan noise across a small fleet of DGX Spark machines.
- Keeping sustained GPU workloads on several Sparks at a steadier clock.
- Scripting consistent clock limits across Sparks from a laptop or workstation.
Quick start
- 1
Clone the repository
git clone https://github.com/<you>/sparkLimiter.git - 2
Enter the project directory
cd sparkLimiter - 3
Run the script and choose which Sparks to apply the limit to
./spark-limiter.sh
Things to know
- Needs key-based ssh access and a user with sudo rights on each DGX Spark.
- mDNS discovery works only on Linux; macOS users must list hosts manually or use other discovery sources.
- Restarting or stopping the service briefly resets the GPU clocks.
In collections
Topics
FAQ
- What is sparkLimiter?
- A shell tool that caps the GPU graphics clock on all your NVIDIA DGX Spark machines and re-applies the limit at boot via systemd. sparkLimiter caps the maximum GPU graphics clock on NVIDIA DGX Spark machines. It discovers Sparks on your network using ssh config, known_hosts, mDNS, and the neighbour table, then runs nvidia-smi -lgc with a configurable range (default 0,2200 MHz) on each one selected.
- Is sparkLimiter free to use? What license does it have?
- sparkLimiter is open source under the MIT license. Check the license terms before using it in commercial products.
- Is sparkLimiter still maintained?
- Actively maintained. The last commit to sparkLimiter was on Oct 14, 2026.
- What can I use sparkLimiter for?
- Lowering power draw, heat, and fan noise across a small fleet of DGX Spark machines. Keeping sustained GPU workloads on several Sparks at a steadier clock. Scripting consistent clock limits across Sparks from a laptop or workstation.
- How do I install sparkLimiter?
- Clone the repository: git clone https://github.com/<you>/sparkLimiter.git Enter the project directory: cd sparkLimiter Run the script and choose which Sparks to apply the limit to: ./spark-limiter.sh
- Where can I get sparkLimiter?
- The source code and installation instructions are on GitHub: https://github.com/MiaAI-Lab/sparkLimiter
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A self-hosted real-time web dashboard that monitors one or more NVIDIA DGX Spark and other GPU machines (GPU, memory, CPU, network, local LLM servers) in one browser window.
A htop-style terminal task monitor for GPUs and accelerators, showing per-process usage across AMD, Intel, NVIDIA, Apple and other vendors on Linux.
An interactive terminal monitor for NVIDIA GPUs that shows device and per-process status, with a CLI device selector and Python APIs.
A command-line tool that shows NVIDIA, AMD and Huawei Ascend GPU status (utilization, memory, temperature, processes) in a compact, readable format.
A Go daemon that continuously monitors NVIDIA GPUs and GPU fabric, detects hardware errors, and reports node health on Linux hosts and Kubernetes.