Table of Contents
- CPU Undervolting
- Overclocking with Nvidia Inspector
We talked about some of the important basic tweaks that would allow you to increase performance and battery life of your Windows 10 computer in the first part of this article.
This section of the guide will deal with two of the most impactful tweaks you can make on a computer: undervolting and over/underclocking.
As I mentioned in the first section, these tweaks have increased the battery life of my QHD+ Razer Blade 2015 from 4 hours to 6, increased my 3dmark11 score by about 10%, and reduced thermals and noise emissions.
On the other hand, this guide does not address the hardware-level changes you can make to further tweak your laptop, like re-pasting your CPU/GPU with a high-quality thermal compound, upgrading your SSD, etc, but if you’re interested in these topics, drop me a line in the comments section at the end of the post and I’ll address them in the future.
What is “undervolting”? Undervolting means to reduce the voltage a component receives.
Why does this matter? Lowering the voltage, even by relatively small amounts, reduces the power draw of the components (in this case, the CPU) and thus decreases the heat generated while increasing battery life.
What’s the catch? Actually, there is little to no risk involved. The worst thing that can happen is that if you reduce the voltage too much, the computer may crash, and you will have to decrease your undervolt (that is, give a little more voltage back).
Although I’ve never heard of anyone’s computer ever being damaged by a software undervolt, please note that we are is in no way liable for any strange act of God or transdimensional undersea being that may damage your computer if you proceed. Again, although this is a safe process with little to no chance to damage any components (in fact, it should increase their longevity, as they will run cooler), proceed at your own risk!
What you need
ThrottleStop! Head over to The ThrottleStop Guide and get the latest version from the first post. Unclewebb is the developer, who has been working on ThrottleStop for years now (I’ve been using it for over 5 years, and it’s been in around for quite a bit longer than that) and is still adding features to this day. He is active in the thread and helpful with any issues—just please make sure you’ve searched and read the documentation before asking for help from him.
You’ll also need a program called Prime95 to stress your system and check for stability issues at your new voltages.
Note: Undervolting can also be done with XTU, however due to the performance impact the software/service has while running, plus its many bugs with re-applying/identifying CPU data, I recommend ThrottleStop instead.
Unzip ThrottleStop to the directory of your choice and run it as an administrator. After clicking “OK” to the disclaimer warning, you should be greeted by the main screen:
Note that my default settings here are not the same as yours, so don’t change your settings to match mine—this is only a reference photo.
Now, these options might seem a little overwhelming and complex, but we’re here to just do a specific thing: undervolt. I will get to the other functions of this software later.
The basics you need to know is that first, ThrottleStop keeps 4 different profiles, which can be selected with the radio buttons numbered 1-4 in the screenshot above. Understand that most changes you make in TS are only for the profile you have selected. Therefore, if you will be using more than 1 profile (and I recommend you do, as I will discuss after we undervolt), you’ll want to set everything for the other profiles as well. Otherwise, when you switch to the other profile, you’ll be back to whatever the default settings were. Still, let’s undervolt first: to get to the undervolting settings, click the “FIVR” button.
Note the radio buttons numbered 1-4 corresponding to the up to 4 profiles TS allows.
Time-saving tip: If you have a popular model/CPU, try googling the name of your computer/CPU along with “undervolt”. See what others have been able to successfully achieve stably and use that as a starting range. Your CPU may be even more capable of undervolting, or less. You will need to fiddle up and down a bit to find a stable undervolt.
This will take a bit of time to get perfect as every chip is different. For example, the Core-i7 4720HQ in my Razer Blade 14” can only handle a -58.6mv offset on CPU and Cache and a -32mv offset on the iGPU. Any more than -60mv and I will get random BSOD restarts. In contrast, on my Core-i5 6300HQ in my XPS 15, I can undervolt up to -125mv on core/cache and -100mv on the Intel GPU.
To start undervolting on this profile, follow the following steps. Remember that you will need to do this for 3 things: CPU Core, CPU Cache, and Intel GPU.
- Tick the “Unlock Adjustable Voltage” box under “CPU Core Voltage”.
- Make sure “Adaptive” is always selected.
- Move the Offset Voltage slider to a modest value, such -50mv.
- Under “Save Voltage Changes to ThrottleStop.ini” set it to Save voltages after ThrottleStop exits. This ensures that if you have a hard crash due to excessive undervolt, those same settings won’t be reapplied automatically.
- Click “Apply”. Write down these numbers, because in the event that it crashes the values will reset to zero.
- Do the same for CPU Cache. CPU and Cache undervolt tolerances are, in my experience, always the same. For the Intel GPU I find that they are generally less undervoltable, so I use more conservative values.
- Use Prime95 or an intensive game for a few hours. Did your computer freeze up or restart at any time? Undervolt 5mv less on each component (i.e. if it froze at -60mv, lower the UV to -55mv) and try again until it’s stable.
- If the system has no issues after a few hours of testing, then go ahead and lower the voltage offset a little more (i.e. if -60mv was stable, try -65mv).
The greater the undervolt, the cooler the CPU will run and the less power it will use. This can lead to temperature drops under full load of anywhere between 5-15C, meaning your computer will be able to operate faster for longer, all the while generating less heat. It’s absolutely worth the effort.
At this point, once you have set up the undervolting, you can use Task Scheduler to start ThrottleStop with your computer and the undervolts will stick. However, if you want to tweak a bit more, there’s quite a few more things that ThrottleStop is capable of, such as…
Using ThrottleStop profiles to keep temperatures and noise down and performance up
Depending on the quality of the design of your computer you may have issues with throttling, heat, fan noise, or maybe all three.
Many, many notebooks are just not designed properly for the components they contain these days. Case in point: I first started using ThrottleStop years ago because of the overpowered but undersized Acer 3830TG, which would throttle from 2.3 GHz down to 800 MHz as a BIOS failsafe after about 10 minutes of gaming. The 13.3-inch chassis and insufficient cooling meant that the CPU would quickly hit 95C, at which point the system would go into emergency measures to reduce the heat. The solution? I used ThrottleStop and its profile abilities to limit the peak clocks of the computer dynamically, based on the temperature of the CPU. By limiting the clocks to 1.8GHz instead of the default 2.3GHz, it was able to play games sustainably without any drop in performance because of the reduction in heat generated.
A more recent example for the need to do this would be the 14-inch powerhouse laptops I reviewed, the P34W v3 and the 14” Razer Blade, which both share the Core-i7 4720HQ CPU and GeForce 970M GPU.
Unchecked, both of these machines ran into issues due to high CPU temperatures. The P34W would have to throttle its GPU and CPU down by about 30% to avoid thermal failsafe shutdown (occurs in most Intel chips at 100C), while the Razer Blade would not throttle, but remains uncomfortably close to its 100C thermal limit and becomes almost too hot to touch.
These types of temperatures are terrible for the longevity of the components, including the GPU, SSD, and especially battery… Not to mention that these kind of temperatures result in your laptop fans sounding like a 747 during takeoff.
So let’s say you’ve got a hot laptop and you want to keep the temperatures from getting out of hand, or perhaps the fans kick into high past 80C and distract you—you can use ThrottleStop to solve these issues. We’re going to do this by setting up 3 distinct profiles for TS to use, each with different clock settings and different temperature triggers. From the main TS screen, click “options” and you’ll find this window:
Under “Profile Names”, you may consider making “1” the max performance profile, “2” the slightly downclocked profile, and “3” the “oh shit, my PC is melting” profile. You can call them whatever you want, but just remember that you’re setting them up as a descending order of power. Before we can continue, we’re going to need to check the “Nvidia GPU” option, and then restart TS (I am not sure what to do here if you do not have an ATI card.
If the “GPU °C” is greyed out for you, then you’re going to be limited to 2 temperature profiles instead of 3. So, assuming you have an Nvidia card, check the box, quit and restart TS, then come back to the options menu. At this point, the “GPU” box under “Alarm” should no longer be greyed out.
Check the “Alarm” box. There are 2 columns. The first column, “DTS”, refers to the number of degrees short of your CPU’s thermal limit to trigger the alarm. For example, on an Intel CPU this will probably be 100C, so setting a “DTS” of 8 means that when your CPU hits 92C it will switch to whatever profile you put under it (in my case, this triggers a switch to profile 2). *Note that we haven’t set our profiles yet and thus switching profiles will have no effect until we do.*
Under the GPU column, the top box is the actual temperature alarm of the dedicated GPU, not the CPU. I set this to 89 as GPUs aren’t designed to run as hot as CPUs, and underneath that, set it to trigger profile 3.
What did we just do, exactly? We set up 2 separate temperature triggers for 2 separate ThrottleStop profiles (which we will create shortly).
Setting a DTS of 8 means that at about 92C, your computer will switch to profile 2, which we will set up to be slightly slower. Setting the GPU of 89C means that if your GPU hits 89C, your computer will switch to profile 3 (which will be the slowest one, designed to reduce temperatures). I set up the profiles like this because modern GPUs like the 970m/980m generally run cooler than modern CPUs. A mobile quad-core CPU is designed to run at 95C without issue, but GPUs tend to run about 10C cooler. Essentially- an 92C (DTS 8) CPU isn’t a big deal in a performance laptop, but an 89C GPU is something we want to avoid.
Default Profiles & Miscellaneous Settings
- Check the box for “AC Profile” and set it to “1”. Set battery profile to 4. Whether you want TS to govern your CPU while on battery is up to you. If you do want to use TS while on battery, don’t forget to setup profile 4 later.
- Check “Do Not Reset FID/VID on Exit”, so that the values TS sets will be kept even if the program is exited.
- Check “Battery Monitoring”.
- Check “Start Minimized”.
- Check “Minimize on Close”.
- Click “OK” to exit the options screen to start setting up our profiles.
Setting up the profiles: Profile 1 (performance)
Let’s start with the main profile, profile 1. This is the profile that your machine will be using by default (whenever you plug into AC, if checked that option). Things I recommend for all profiles are to check “power saver”, “speedstep”, “C1E”, and “BD PROCHOT”. “Power Saver” simply allows your CPU to downclock to a lower-power mode while not in use, while C1E also saves power. Disabling these is essentially the same as forcing the minimum CPU speed to 100% in the Windows power options: it’s a waste of power and creates heat.
In terms of clocks, profile 1 should be the fastest your machine can handle under load while staying within the temperature/noise limits you are comfortable with. If you want max performance, then leave everything else unchecked. Don’t check either of the clock modulation settings or set a multiplier.
The settings we have just set will mean that your computer will run on profile 1 until it hits one of the two temperature alarms we’ve set.
Profile 2: Slight downclock
Profile 2 should be set up the same as profile one with the exception of the multiplier, “disable turbo”, or both.
If you check “disable turbo” on this profile, then it will ensure that your CPU, once it hits a toasty 92C (assuming a value of 8 DTS in the options—you could set this profile to trigger at a more conservative temperature if you like) will disable its turbo and run at its max base clock.
For example, on an i7 4720HQ, turbo will go up to 3.6GHz with a single core, but if you disable the turbo, it will max out at 2.6GHz. This is good because it will keep temperatures down, however, it might be either too conservative for you (it will run cool and could be running faster) or not conservative enough (if temperatures are still getting high without turbo), depending on your system.
If your system still runs above 92C at your clocks on profile #2, then you should use the “set multiplier” function to a lower number. The goal is to find a frequency that your processor can sustain under combined CPU+GPU load where the temperature will not increase above 88C or so. The exact temperature is up to your hardware and your taste, just remember that hotter temperatures mean shorter-lived components.
You can use the built-in tool “TS Bench” to test the temperatures of the CPU, but Prime 95 or your favourite intensive game will be better tests. Just remember, the clocks you choose for this profile should allow your computer to cool off a bit and get away from those broiling 90C+ temperatures that you might reach on your performance profile.
Profile 3: Failsafe
This is the profile that will be triggered if your GPU (which, remember, should be cooler than your CPU) hits the amount you set in the options (89C).
Basically, if your GPU is hitting 89C, then you need to get a cooler, turn on the AC, or downclock your CPU, because whatever cooling solution you have in your laptop is being overloaded. Therefore, profile 3 should be the lowest-clocked of the 3.
I set this to a multiplier of 20 (2.0 GHz with 4 cores) on my Razer Blade, but it depends on your thermals. This profile should be set up so that the most CPU+GPU-intensive tasks could be run on your machine for hours without temperatures hitting 80C.
This is your failsafe profile for your components to take a breather if they really need it, so you want to be conservative. Unless things have gone wrong or you’re gaming in the Sonora Desert, TS should be running on profiles 1 or 2.
Last step: Set up undervolts for all profiles
Remember that the undervolts you set in the FIVR options have only been set for the first profile until now. Just go through and copy the exact same settings to all the profiles you’ll be using. By following this guide until now, you will have reduced CPU temps and power draw, set up thermal profiles, and as a result your computer should be running faster for longer without your computer overheating and throttling itself radically.
So far in part 2 we’ve reduced the power draw and heat of our CPUs by undervolting, and set up a temperature-based profile for ThrottleStop. Now that we’ve lowered the heat strain on the cooling system from the CPU, we can make use of that that extra temperature headroom to overclock the GPU and get even more performance.
Overclocking with Nvidia Inspector
We just went through a lot of trouble to reduce temperatures, so why are we now overclocking? Well, the reduced heat from your CPU means that the cooling system can work more effectively with the GPU.
Most laptops have a dual-fan cooling solution, but the heat created by one component (usually the CPU) will spread to the other component (the GPU), resulting in poorer performance of both. The GPU is ultimately more important for gaming performance than the CPU, and so increasing its core/memory clocks will give a higher boost in performance with less temperature increase than increasing your CPU clocks.
A note on risk—a slight overclock is pretty safe and shouldn’t affect the life of your card much. Generally, if you try to overclock too much, the worst that will happen is that you’ll get crashes or visual artifacts. If these occur, then reduce your clocks and try again. However, be safe and be conservative. These days, the major performance indicator for GPUs is not the clock speed but the number of CUDA cores. This isn’t something you can change, but by increasing the clocks you can generally get a free ~10% performance boost—and who doesn’t like free?
Here’s what you’ll need: NVIDIA Inspector and FurMark. To my knowledge, there is no lighter-weight set-and-forget GPU overclocking app for Windows. Download and extract nvidiainspector.exe to the directory of your choice. Open it and you’ll see a screen identifying your CPU with various statistics. On the lower-right there is a button to show overclocking options. Click this button and accept the dialogue. You should now see a screen like below:
As with undervolting, it’s a good idea to google search your video card/laptop model combination + “overclock”. This will give you an idea of what kind of range you can expect. I found the average overclock for the core of my 970m to be +140Mhz and the average memory overclock to be +400Mhz. As I don’t want to stress such an important component too much, I went with +110MHz on the core and +270MHz on the memory. When you’re ready to test, click “Apply Clocks & Voltage”. Do not exit Nvidia inspector yet.
As with undervolting, you need to tests stability and temperatures. Use FurMark to stress your system for a few minutes and check for any visual artifacting (if yes, then reduce your memory clocks) or crashes (reduce your core clock). Keep an eye on your temperatures with ThrottleStop as well.
Once you have found clocks that work for you, you’ll want to make them stick. The manual way is to left-click on “Create Clocks Shortcut” and create a shortcut that will apply these clocks to your GPU whenever you run it. However, there is an automatic way to apply these clocks at startup, on resume from sleep, and so on. This will take a little finesse with the Task Scheduler:
- Right-click “Create Clocks Shortcut” and select “Update Clock Startup Task”. This will make it so your computer will automatically set these clocks on startup via the Task Scheduler. However, these clocks tend to get reset upon resume from hibernation/sleep, so we’ll want to fix that.
- Open Task Scheduler
- Expand “Task Scheduler Library”. You should see a folder called “nvidiainspector”. This is the startup task that we’ve just created with Nvidia Inspector.
- Double-click on this task and go to the “Triggers” tab.
- Create a new trigger as shown:
- Click “OK”!
Now you’re truly done. Your clocks will be set upon startup/login or on resume from sleep.
In the first part of this guide we went over some general power-saving tweaks, hopefully extending your battery life and making you more productive.
In the second part of this guide I walked you through undervolting your CPU and setting-up different performance profiles based on temperatures with ThrottleStop.
Lastly, we used NVIDIA Inspector to set a GPU overclock, then used Task Scheduler to ensure the clocks are applied.
Although it seems like a lot, we’ve actually only explored a few of the myriad of possibilities with these software. We’ve decreased heat, noise, and power consumption while increasing performance with software—but there is another world out there of hardware-level changes you can make to further tweak your laptop.
Consider re-pasting your CPU/GPU with a high-quality thermal compound, upgrading your SSD, or, if you have a TB3 connector, attaching an external GPU. If these topics are popular, I’ll be sure to write more on them in the future.
Lastly, please leave a message in the comments if you found this guide useful or are having difficulty executing or understanding a step. The second half of this guide is quite complicated and I’m sure I have not done as good a job of explaining or demonstrating some tweaks.
I will try to keep this guide as up-to-date and helpful as possible. Thanks for reading!