It's hard not to love SetCPU developer Michael Huang. He's been on the overclocking frontline for many devices, including the Samsung Galaxy S II and Motorola XOOM, and now he strikes again with an custom tweaked kernel (update: to clarify, the kernel source isn't available, so this isn't a rewritten kernel - he used a hex editor to modify it) for the HTC EVO 3D that allows for a stable 1.8GHz. With a few minor tweaks the kernel should work for the Sensation as well, although he hasn't had time to get it working without a device in hand.

evo3d_oc evo3d_benchmark

Ludicrous speed indeed! He's also provided a 7-minute video in which he runs a series of benchmarks at both stock and overclocked speeds.

The instructions are somewhere in the middle of the difficulty spectrum as far as hacks and mods go. As always, you should be very careful when modding your phone - if something goes wrong you can end up with a bricked device.  You also need to root with fre3vo. Still with us? His instructions:

Download the kernel module appropriate for your phone. If you're not sure which one to download, check /proc/version and find the version string and then check the part that contains the localversion, which is right after and looks like this: "gb7a86da" or "gcb1cf83"

Download: Latest EVO 3D OTA gcb1cf83:
T-Mobile HTC Sensation 4G gb7a86da:
EVO 3D pre-OTA g93c03bf:

Anyone good with a hex editor and your device hasn't been added: Just download the first link above and replace the "gcb1cf83" with whatever your version is - it's hacky, but it works. We can't build a "real" ko anyway, since we don't have kernel source.

(To add support for your EVO 3D/Sensation kernel, send me the kernel version string (cat /proc/version) and I'll upload a kernel with support).

1. Temp root the phone using fre3vo, and install everything you need to run root apps. If you lost temp root due to /system/bin/su becoming unlinked (root apps don't detect root anymore), do it again. Thanks #teamwin!
2. Decide which frequency and voltage you want. Frequencies have to be a multiple of 54MHz. For example, 1512MHz = 54MHz*24. Remember how much you have to multiply 54 by to get the frequency you want. For 1782MHz, as I reached, use 33 (54MHz*33 = 1782MHz).
3. Push the kernel module to your device: adb push 8x60_oc.ko /data/local/tmp/8x60_oc.ko
4. Use SetCPU (you must be 2.2.4 or above for proper MSM 8x60 support!) to set the max frequency to 432MHz and min to 384MHz.
6. Go back to the home screen, press the power button, and count to ten.
7. Load the kernel module with the following command, replacing the scpll_l_val with the value you got above and the vdd_uv with the voltage you want (in microvolts). Here is a valid command for around 1.8GHz: adb shell insmod /data/local/tmp/8x60_oc.ko scpll_l_val=33 vdd_uv=1375000
If you do not specify any parameters, the module defaults to 1512MHz and 1250000 uV! (scpll_l_val=28 vdd_uv=1250000) This should be safe for everybody, since that's the MSM 8x60's native speed (of the higher speed bin anyway ).
8. If it crashes right after you insmod the kernel, reboot and try again - the second core was likely still active. This doesn't necessarily mean your overclock settings were unstable.
9. Now go into SetCPU and it will autodetect the new max frequency. Set it and try it out. If your phone crashes at or after this point, the scpll_l_val and vdd_uv combination was not stable enough. Reboot and try another combination.

Mr. Huang also points out that the kernel allows for a clock as high as 2GHz, although at that speed things probably aren't very stable. Not using SetCPU? Consider it - it's $2, offers a host of features, and it's a good way to support a great dev. Alternatively, you can donate to him using PayPal.

As always, any questions should be directed towards the source thread, as we can't provide much by way of support.

[Source: XDA-Developers]