How to Overclock iPhone 3G, 3GS, and iPhone 4 to 620MHz

The reason I took the risk to modify the clock speed is
simple 🙂 I will be saying farewell to iPhone. Samsung galaxy S II will be my
next toy. The hardware specification is the best in the market at this moment
(JUNE 2011). It is the best ever performance phone.

I have successfully tested the overclocking and it works
well, I suggest overclock to 533Mhz if you wish to maintain good battery level.
As you can tell iPhone 3G is about maybe 2 years plus? or more? and obviously
the batttery isnt as good as before. At 600 MHz, i have not encounter any
problems or heating problem. GPS software works much smoother with no lag. This
even works on iOS 4.0 – iOS 4.2.1

For your information

iPhone 3G has 620 MHz (under-clocked to 412 MHz) ARM
1176JZ(F)-S Processor. Apple has UNDER-CLOCKED the processor, so we are not
actually overclocking, we just optimized the processor.

iPhone 3GS has 833 MHz (under-clocked to 600 MHz) ARM
Cortex-A8 Processor

iPhone 4 has 1 GHz (under-clocked to 800 MHz) Apple A4

OK here is the main course

Step by step Instruction

1: SSH into your iPhone open file name fstab which can be
found at /private/etc I suggest you the “fstab” file. I have rename
fstab to fstab(ori)

2: Open up fstab in TextEdit (Mac) or Notepad.

3: Add the following lines:


alpine (default password)

sysctl -w
hw.cpufrequency_max=XXX000000 (Replace XXX with the MHz Eg: 533, 600)

sysctl -w hw.cpufrequency=XXX000000
(Similar as above)

sysctl -w
hw.cpufrequency_min=YYY000000 (Replace YYY with the MHz during sleep mode)


Add the above before the existing line1 and line2:

/dev/disk0s1 / hfs rw 0 1

/dev/disk0s2 /private/var hfs rw 0

Before you save the file make sure it looks like the
following. In this example I overclocked it to 600 MHz. This is similar to
iPhone 3GS speed! (833 MHz (under-clocked to 600 MHz) with ARM Cortex-A8




sysctl -w

sysctl -w hw.cpufrequency=600000000

sysctl -w

/dev/disk0s1 / hfs rw 0 1

/dev/disk0s2 /private/var hfs rw 0

4: Reboot your iPhone


enjoy!!! and remember to say thank you 🙂



11 thoughts on “How to Overclock iPhone 3G, 3GS, and iPhone 4 to 620MHz

  1. So it sounds as if by doing this on my 3GS, I will be able to overclock to say 800Mhz when the phone needs it, but clock the phone back down to it’s typical clocking speed when the CPU doesn’t require those speeds? This is my goal so I can keep the reliability up, and not worry about overheating or excessive battery drain at all times. Can you confirm this is what your procedure aims to give? From looking at the code, it seems to be the case, but I just wanna make sure because other guides I’ve read, they disabled the power management file to overclock, which I think is retarded because it would just kill the phone. Your method seems much more legit. Thanks.

  2. i tried ssh to iphone in dfu mode but its impossible without the file which is said to be modified… so never do this I myself tried it but it chocked on me…. well i needed to restore since i only had 800Mb of space anyways…

  3. you could use ifile to do the same thing. And a note to those who have tried, you MUST not enter a new line when issuing the sysctl -w XXXXXXXX command
    this line is correct –> sysctl -w hw.cpufrequency_max=600000000
    this line is wrong –> sysctl -w

    doing the latter will render the device hopelessly stuck at the apple logo because he will think it’s two seperate commands and not a single command.

  4. to everybody how may concern .,..this method is legit (the person who came out with this first really has knowledge that I would like to hae too.. I’ve finished doing it on my 3GS jailbreaked with iOs 6.1.2…. DON’T DO THE “OTHER METHOD” wich is renaming a file from the power managing of the phone… that one even if it worked it’s not as practical as this..BUT all the comments that I’ve read are all from people who tried it and now they’re restoring the phone!


    This method in some cases some people said it bloecked the phone… I think this’s the problem:

    by editing a system file like fstab in notepad you’re introducing some code that is ASCII like wiich identifies new line and carriage retuirn (10,13) and so on…


    allways make a backup copy of course… AND EDIT THE FILE DIRECTLY in the iOs using a Unix text editor line “Vi” …I SAY THIS (THIS’S IMPORTANT:..

    When I edited the file in notepad and uploaded to the iphone i (fortunatly) remembered opening the original file and de edited one with “Vi” (# View fstab [enter]) …and on the “new lines” it appeared a weird simbol that it didin’t appeareed in the original one in the line cahnge (new line)… I assume thi’s is because by editing in notpepad you’re coding the file in ASCII format (by defalut) when this file is not a regular ascii text file!… (all tehew new lines where marked with the simbol that when I program in assebly i identify with being the Ascii code 10 and 13 …(new line and carriage return)

    SO.. edit the file in the envirnoment in wich he exists! and no problems shuld arrise instead of geting a unix file editing it with a windows program (the problem is not being a windows program is that notepad by default encodes the text being ascci and other options you may see and choose wich type ate the bottom when saving the file!

    take care guys..greatings from the small 9 islands in the middle of the atlantic (although i’m just in one of them I can’t be in 9 places qat the same time 😉

  6. and of course everyone has the file.. but if you’ve deleted it..DON’T REBOOT THE PHONE UNTIL YOU REPLACE IT…

    make a new one just like this in Vi or other any editor that densn’t mess with the original file…
    this is my fle:

    PASSWORD // (BE CAREFUUL write the root password corerectly)
    sysctl -w hw.cpufrequency_max=833000000 //don’t forget this is million hertz.. if tou put 23 its not 23 MHz but 23 Hz)
    sysctl -w hw.cpufrequency=833000000
    sysctl -w hw.cpufrequency_min=600000000
    /*CURIOSITY.. in my oriignal file when opening in notepad this next (orignal) two lines where just one
    line like if they didin’t have a new line BUT with SSH when I oppened the same file inside they’re mother
    operating system they where just like I show here – MORE HELP FOR MY THEORY
    BEWARE: this lines vry from phone (or iOS version to another as you can see it’s exactley equal to
    what it’s mentioned above…just leave them be as they are in your phones*/
    /dev/disk0s1s1 / hfs rw 0 1
    /dev/disk0s1s2 /private/var hfs rw 0 2

  7. alternatively you could use the guide here “” it is just the same but for me its clearer

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s