Wednesday, March 5, 2014

How to overclock GeForce 460GTX Fermi on linux

You do all modifications at your own risk. You can easily brick your card. This tutorial is for advanced users! I am not responsible for damage you can do to your card! It can work for other Fermi cards, but it's not guaranted!

Today I am here to tell you, how to overclock your Fermi based GeForce card.This tutorial is written for MSI GeForce N460GTX 1GB OC edition! You can change some values according to your card, but it's a risky. nVidia didn't provide support for overclocking in Linux. The only option is to modify the BIOS of graphic card. I am going to explain this mod on my MSI GeForce N460GTX 1GB OC edition.
Stock frequencies

For this mod you will need these things:
After downloading necessary tools, you can take FDSTD10.IMG and make bootable USB drive with it. It can be simply achieved with dd:

# dd if=FDSTD10.IMG of=/dev/sdx bs=512
# sync

When all is complete, decompress nvFlash utility and copy it's content to the USB drive (IMG is 10MB big to have some extra space for utils). Now you can reboot your system and boot from your USB drive. When command prompt appears, run this command to backup your BIOS:

C:\> NVFLASH.EXE --save BIOS.rom

Now you can restart your computer and boot your Linux. It's time for modify your BIOS. Make sure you have your BIOS backuped! Run NiBiTor (with wine works perfect) and open your BIOS file.

NiBiTor 6.06

Integrity MUST be green. That means that your BIOS file is OK. Go to Tools->Fermi Voltage. You should see this:
Fermi Voltage Editor - stock values
These are your voltages. We need to rise them a bit, for stability. Look only at Setting 2 and Limit. Setting 2 is for high performance 3D. Set these values:
  • Limit: 1.15V
  • Setting 2, Tab 0: 1.0125V
  • Setting 2, Tab 1: 1.1V
Click apply.
Modified voltages
Now go to Tools->Fermi Clocks. This screen is a bit tricky. This thing works only for GF104, GF110, GF114 cores. GF100 is a bit different.
Fermi Clock Editor - stock values
Here is a little explenation:
  • Line 15, Tab 5: Memory frequency, mine is in nVidia reported as 3600MHz, here is 1800. 
  • Line 15, Tab 3: Shader frequnecy.
  • Line 15, Tab 4: Bumped shader, calculated from Shader frequency.
  • Line 15, Tab 11: Bumped shader, calculated from Shader frequency
Core frequency is set automatically. At first you can set your memory frequency. Just change (remember, it will be times 2):
  • Line 12, Tab 5: 2050MHz
  • Line 15, Tab 5: 2050MHz
Memory frequency changing
 Now it's time for shader clock. It's a bit different, we need to calculate bump shader as well. At first, we need to decide, which frequency do we want. I want mine running at 1700MHz. As we said, bumped shader is Line 15, Tab 4 and 11, Shader is on Line 15, Tab 3. Here is a simple math, how to calculate bumped shader. At first, we want to know multiplier. It can be calculated as:
(Line 15, Tab 4) divided by (Line 15, Tab 3)
In this example, it is as
1538 / 1451 = 1.06
Our bumped multiplier is 1.06. Now we can set desired shader frequency (1700 MHz) in Line 15, Tab 3
Shader frequency changing
and calculate bumped shader with our formula as:
1700 * 1.06 = 1802
Here is used multiplication!!! So now, set Line 15, Tab 4 and 11 as 1802.
Bumped Shader frequency changing
Click apply and save your new BIOS file as copy. Don't overwrite it! It can be handy. Now it's time for flashing. Let's say our new BIOS file is called new.rom. Copy new.rom to your USB flash drive and reboot your computer to FreeDOS. After that, run this command to flash:

C:\> NVFLASH.exe new.rom

When asks, say "y". After all is done, reboot your computer and check your new overclock.
Overclocked card

If something go wrong, you can try "blind flash". I hope you let your old BIOS file on the USB. Reboot your computer and try to boot FreeDOS. It's hard becouse your propably wont see anything. When you think DOS is running, write command for flashing old BIOS. Something like:

C:\> NVFLASH.EXE old.rom

Wait about 10 seconds, pres "y" and hit Enter. After 30 seconds, reboot your computer. Your old BIOS should be resotred. If it's not working, take your card to your friend, who has two PCIe slots, plug it in second slot and flash your BIOS using his card for display. Here is my original BIOS file and modified.
If you have different Fermi based GeForce, you can experiment with values, but you can make your graphic card unusable if you set your frequencies too high. Try to google first some safe frequencies and always use your brain.

No comments:

Post a Comment