Nvidia settings panel has a tab called powermizer where you can set a power policy. It will change Graphics Clock, Memory Clock and Processor Clock depending on the system graphics load.
First get what modes do your card and driver support:
nvidia-settings -q GPUPerfModes -tperf=0, nvclock=50, memclock=135, processorclock=101 ; perf=1, nvclock=405, memclock=324, processorclock=810 ; perf=2, nvclock=405, memclock=1800, processorclock=810 ; perf=3, nvclock=715, memclock=1800, processorclock=1430
I have 4 levels, 0, 1, 2 and 3. 0 is the one I want to set as it sets the clocks to the lower frequency.
If you want to set it to a powersave mode with no scaling you can do it by editing /etc/X11/xorg.conf like this:
Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" Option "Coolbits" "1" Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x2222; PowerMizerLevel=0x3; PowerMizerDefault=0x3; PowerMizerDefaultAC=0x3" EndSection
enables PowerMizer feature (0×0 would disable it instead). This entry may not be needed since in recent driver versions PowerMizer is enabled by default.
sets the governor approach. 0×2222 means fixed frequencies for both battery and AC mode.
sets the current mode. 0×3 is the lowest, least power intensive mode.
sets the default level on battery. 0×3 is the lowest, least power intensive mode.
sets the default level while with an AC plug. 0×3 is the lowest, least power intensive mode.