tags: MSR kernel module, c2ctl, k10ctl, TurionPowerControl, indicator-cpufreq, cpupowered, overclock, linux
c2ctl: a program for overclocking Intel processors in Linux
k10ctl: a program for overclocking AMD processors in Linux
MSR kernel module: the mean 'n' patatas
*Edit: New addition: TurionPowerContol, another utility for overclocking an AMD CPU in Linux. (There is also a Windows version.)
*Edit: New additions: CrazyGangster spotted this one: indicator-cpufreq, which, if you have apt-get and the indicator-cpufreq repository in apt-get's list, can be obtained via "sudo indicator-cpufreq". Another new addition: cpupowered, which is for AMD.
And go here: https://wiki.archlinux.org/index.php/Fan_Speed_Control
DISCLAIMER: I have never overclocked in my life. That probably will change, however. Well, maybe I overclocked my graphics card one time when I was going through settings. And there was a time I tried to overclock but did not succeed...anyways...
What I am doing and why am I posting, especially given I have never overclocked in my life? To improve the Internet. More specifically, search results when one tries to find a Linux program for overclocking the CPU.
Please excuse the lengthy post, put there's some things that really need to be said/asked. I joined this forum so that I could post this. There's some things I've been wondering for quite a while and haven't found answers to, that I think others would like to find answers to as well.
I am almost angered by the fact that it is essentially impossible (at time of writing) to find the actual names of programs necessary to overclock the CPU in Linux using search strings like "overclock linux", "overclock cpu in linux", "overclock Intel CPU in Linux", "FSB overclock AMD CPU linux", and the list goes on. You can go through pages of search results and not come across a single link that gets you closer to overclocking in Linux.
You do find a lot of pages on how to overclock an nVIDIA graphics card in Linux, which is great and all, but that's really irksome when someone wants to know how to overclock the CPU in Linux and all they get is how to overclock a GPU in Linux
You might even find people talking about PerlMon, a program that supposedly can overclock the CPU in Linux, but all download links to it have apparently been wiped off the face of the Internet.
And before someone says something about the BIOS, this is for the majority of consumers that have a "normal" motherboard that doesn't have an in-BIOS overclocking feature. Of my encounters, only very few ready-made computers (Dell, HP, etc.) have a BIOS that has its own overclocking feature. So for the rest of the world that has to run an overclocking program from the OS....
I have been doing some research on overclocking. What actually happens? People say they can overclock from the BIOS or use a program in an operating system to overclock. The general option seems to be that using the BIOS is vastly superior.
Well, I have discovered the magic password for good search results: MSR. Yep. Google "linux MSR" and you get all kinds of info on how to overclock a CPU in Linux. The MSR is the Machine/Model Specific Register. Registers are parts of the processor that are like the processor's workbench. It can directly work on stuff in registers. Often, stuff has to be copied from RAM into a register before the CPU can work with that data.
Anyways, modern processors look to the MSR to see how fast they should be going. The clockspeed is encoded into the MSR. By writing to the MSR, you can change the clockspeed of the processor.
Once you have the Linux MSR kernel module installed, programs like c2ctl and k10ctl can use the Linux MSR kernel model to read from and write to the MSR, allowing you to...oh my gosh...overclock your CPU form Linux!
But this leaves me with some massive, burning questions. I hear a lot of things like “It's impossible to overclock the CPU on a Dell”, or “That BIOS locks the system so that you can't overclock”, or “You're going to have to hack the BIOS in order to overclock.”
WHOA WHOA WHOA! A few things. First, you're booted into the operating system now, and the BIOS is gone. It is not running on the processor at all. Sure, you might be able to invoke BIOS runtimes via an interrupt, but you don't have to. Furthermore, in the case of Linux, it's my understanding that it doesn't use any BIOS calls. So how can a BIOS stop an operating system from overclocking? That just doesn't make sense.
All you have to do is write to the MSR, right? Where is this need to “hack the BIOS”?
Also, people seem to ignore the fact that the BIOS is just as much software as an operating system or a program being ran by the operating system is. The BIOS ain't hardware. It's still just 1's and 0's and gets executed by your CPU. There's not even a gray-area.
People tend to refer to overclocking from within the operating system as “software overclocking” as if overclocking from the BIOS isn't.
Furthermore, if you overclock from the BIOS or from the operating system, either way you're writing to the MSR, aren't you? So how is BIOS overclocking superior?
That's my rant/ search engine farming. Hopefully we can get/provide more answers because of it.
If anyone else has found software that can overclock a CPU in Linux, please post it!
Cheers,
Jake
Edited by SpawnHappyJake - 5/7/12 at 10:43pm
c2ctl: a program for overclocking Intel processors in Linux
k10ctl: a program for overclocking AMD processors in Linux
MSR kernel module: the mean 'n' patatas
*Edit: New addition: TurionPowerContol, another utility for overclocking an AMD CPU in Linux. (There is also a Windows version.)
*Edit: New additions: CrazyGangster spotted this one: indicator-cpufreq, which, if you have apt-get and the indicator-cpufreq repository in apt-get's list, can be obtained via "sudo indicator-cpufreq". Another new addition: cpupowered, which is for AMD.
And go here: https://wiki.archlinux.org/index.php/Fan_Speed_Control
DISCLAIMER: I have never overclocked in my life. That probably will change, however. Well, maybe I overclocked my graphics card one time when I was going through settings. And there was a time I tried to overclock but did not succeed...anyways...
What I am doing and why am I posting, especially given I have never overclocked in my life? To improve the Internet. More specifically, search results when one tries to find a Linux program for overclocking the CPU.
Please excuse the lengthy post, put there's some things that really need to be said/asked. I joined this forum so that I could post this. There's some things I've been wondering for quite a while and haven't found answers to, that I think others would like to find answers to as well.
I am almost angered by the fact that it is essentially impossible (at time of writing) to find the actual names of programs necessary to overclock the CPU in Linux using search strings like "overclock linux", "overclock cpu in linux", "overclock Intel CPU in Linux", "FSB overclock AMD CPU linux", and the list goes on. You can go through pages of search results and not come across a single link that gets you closer to overclocking in Linux.
You do find a lot of pages on how to overclock an nVIDIA graphics card in Linux, which is great and all, but that's really irksome when someone wants to know how to overclock the CPU in Linux and all they get is how to overclock a GPU in Linux
You might even find people talking about PerlMon, a program that supposedly can overclock the CPU in Linux, but all download links to it have apparently been wiped off the face of the Internet.
And before someone says something about the BIOS, this is for the majority of consumers that have a "normal" motherboard that doesn't have an in-BIOS overclocking feature. Of my encounters, only very few ready-made computers (Dell, HP, etc.) have a BIOS that has its own overclocking feature. So for the rest of the world that has to run an overclocking program from the OS....
I have been doing some research on overclocking. What actually happens? People say they can overclock from the BIOS or use a program in an operating system to overclock. The general option seems to be that using the BIOS is vastly superior.
Well, I have discovered the magic password for good search results: MSR. Yep. Google "linux MSR" and you get all kinds of info on how to overclock a CPU in Linux. The MSR is the Machine/Model Specific Register. Registers are parts of the processor that are like the processor's workbench. It can directly work on stuff in registers. Often, stuff has to be copied from RAM into a register before the CPU can work with that data.
Anyways, modern processors look to the MSR to see how fast they should be going. The clockspeed is encoded into the MSR. By writing to the MSR, you can change the clockspeed of the processor.
Once you have the Linux MSR kernel module installed, programs like c2ctl and k10ctl can use the Linux MSR kernel model to read from and write to the MSR, allowing you to...oh my gosh...overclock your CPU form Linux!
But this leaves me with some massive, burning questions. I hear a lot of things like “It's impossible to overclock the CPU on a Dell”, or “That BIOS locks the system so that you can't overclock”, or “You're going to have to hack the BIOS in order to overclock.”
WHOA WHOA WHOA! A few things. First, you're booted into the operating system now, and the BIOS is gone. It is not running on the processor at all. Sure, you might be able to invoke BIOS runtimes via an interrupt, but you don't have to. Furthermore, in the case of Linux, it's my understanding that it doesn't use any BIOS calls. So how can a BIOS stop an operating system from overclocking? That just doesn't make sense.
All you have to do is write to the MSR, right? Where is this need to “hack the BIOS”?
Also, people seem to ignore the fact that the BIOS is just as much software as an operating system or a program being ran by the operating system is. The BIOS ain't hardware. It's still just 1's and 0's and gets executed by your CPU. There's not even a gray-area.
People tend to refer to overclocking from within the operating system as “software overclocking” as if overclocking from the BIOS isn't.
Furthermore, if you overclock from the BIOS or from the operating system, either way you're writing to the MSR, aren't you? So how is BIOS overclocking superior?
That's my rant/ search engine farming. Hopefully we can get/provide more answers because of it.
If anyone else has found software that can overclock a CPU in Linux, please post it!
Cheers,
Jake
Edited by SpawnHappyJake - 5/7/12 at 10:43pm









