Yes, it is possible to disable the boost function. I fold occasionally on Windows with a GPU and I use NVIDIA Inspector to switch my GPU from a power state P0 to a lower power state P2 where the boost is not active. Then for the P2 state I set my preferred OC which is 1200 MHz and the GPU is running constantly with this frequency. I even wrote a script for a command line so I do not have to use NVIDIA Inspector's GUI.toTOW wrote:Is it even possible to disable boost function (or any dynamic management of voltage and frequency) ?
It would be so easier if we could get back to the old behaviour of the hardware ... it was easier to control what was happeing.
I can share my script which supports many different Performance Levels with many frequencies:
Code: Select all
@echo off
setlocal enableextensions
if "%~1" == "" goto missing
set nvi_inspector="C:\Program Files\NVIDIA Inspector\nvidiaInspector.exe"
set nvi_reset=%nvi_inspector% -forcePState:0,16 -setPStateLimit:0,0 -restoreAllPStates:0 -setBaseClockOffset:0,0,0 -setMemoryClockOffset:0,0,0 & timeout 2 > nul
if "%~1" == "min" (
%nvi_reset%
if "%~2" == "f" (
%nvi_inspector% -forcePState:0,8
) else (
%nvi_inspector% -setPStateLimit:0,8
)
exit /b
)
if "%~1" == "medium" (
%nvi_reset%
if "%~2" == "f" (
%nvi_inspector% -forcePState:0,5
) else (
%nvi_inspector% -setPStateLimit:0,5
)
exit /b
)
if "%~1" == "nvidia" (
%nvi_reset%
if "%~2" == "f" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,-500 -setGPUClock:0,1,835 -setMemoryClock:0,1,2000 -forcePState:0,5
) else (
%nvi_inspector% -setBaseClockOffset:0,0,-115 -setMemoryClockOffset:0,0,-500
)
exit /b
)
if "%~1" == "oem" (
%nvi_reset%
if "%~2" == "f" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,0 -setGPUClock:0,1,950 -setMemoryClock:0,1,2500 -forcePState:0,5
)
exit /b
)
if "%~1" == "fah" (
%nvi_reset%
if "%~2" == "max" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,-500 -setGPUClock:0,1,1200 -setMemoryClock:0,1,2000 -forcePState:0,5
) else if not "%~2" == "" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,-500 -setGPUClock:0,1,%2 -setMemoryClock:0,1,2000 -forcePState:0,5
) else (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,-500 -setGPUClock:0,1,835 -setMemoryClock:0,1,2000 -forcePState:0,5
)
exit /b
)
if "%~1" == "max" (
%nvi_reset%
if "%~2" == "t" (
if not "%~3" == "" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClock:0,2,%3
) else (
%nvi_inspector% -setBaseClockOffset:0,0,135
)
) else if "%~2" == "bench" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,200 -setGPUClock:0,1,1250 -setMemoryClock:0,1,2700 -forcePState:0,5
) else if not "%~2" == "" (
if not "%~3" == "" (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setMemoryClockOffset:0,0,200 -setGPUClock:0,1,%2 -setMemoryClock:0,1,%3 -forcePState:0,5
) else (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setGPUClock:0,1,%2 -setMemoryClock:0,1,2500 -forcePState:0,5
)
) else (
%nvi_inspector% -setBaseClockOffset:0,0,135 -setGPUClock:0,1,1235 -setMemoryClock:0,1,2500 -forcePState:0,5
)
exit /b
)
:unrecognized
echo Unrecognized parameter.
goto help
:missing
echo Missing parameter.
:help
echo Type: %0 min [f] ^| medium [f] ^| nvidia [f] ^| oem [f] ^| fah [max ^| GPU clock] ^| max [t [memory clock] ^| bench ^| GPU clock [memory clock]]