[Sprint Samsung Galaxy S III] decimalman:
It feels like time for another scary GPU OC test build. Again, it'll only work on recent AOSP ROMs. I've mostly been experimenting with GPU frequency scaling, so most of the changes focus on that. Off the top of my head, here's what's new:

Made a small change to (maybe) help stabilize 600 MHz

Several changes to make the simple and ondemand governors use lower frequencies more often. There's a tunable setting available at /sys/module/msm_kgsl_core/parameters/idle_scale: raising the setting will generally result in lower GPU frequencies more often. Reasonable settings don't seem to affect performance much.

Added an entirely new GPU governor to work around the things that bother me about the simple and ondemand governors. I don't know if I'll keep it permanently, but it's currently available by selecting the "interactive" GPU governor in Trickster (I couldn't get Trickster to show any other governor names, so I had to piggyback). The new governor has one setting, available at /sys/module/msm_kgsl_core/parameters/tiered_efficiency_mode: set it to Y to slightly favor lower frequencies.

Feedback is encouraged on everything that I changed. Does 600 MHz work any better? Do the changes to simple, ondemand, and/or interactive have any noticeable effect (good or bad) on battery life or performance?

I didn't feel like doing a dedicated build, so I rolled some extra debug information into the new GPU OC test build at the top of this post. It'll dump some extra information any time anything touches the CPU configuration. As soon as your processor stops ramping up properly, you can create a log by opening a terminal emulator and entering "su -c dmesg >/sdcard/dmesg.log". After that, send me dmesg.log from your internal storage.

IIRC, in order to keep 2.0 GHz working long enough to run a couple benchmarks, I had to set the voltage to 1400 mV, make sure the battery was fully charged, remove my case and back cover, and hold my phone directly in front of an AC vent to keep it cool. Clearly, you wouldn't want to run your phone like that all the time. I suppose calling that "stable" was probably misleading. ;)

Keep in mind that the processor in my phone runs well with lower voltages (-75 mV is my everyday undervolt, but even -125 is generally stable), and that goes a long way towards overclocking further. Once you get to a frequency that needs the full 1400 mV to run, you probably won't be able to overclock further. :( The 1400 mV limit is a software limit, but increasing it further might be dangerous (the stock limit is only 1300 mV).

Personally, I don't trust benchmarks in general, and Quadrant especially. Benchmarks can be handy for verifying whether performance has actually improved, but (IMO) most of the available benchmarks are unscientific and inconsistent. In particular, Quadrant seems designed to test whether your ROM was optimized for Quadrant, and not how fast the actual hardware is. Vellamo and GFXBench stand out to me as quality benchmarks, and I'm sure there are others as well.

Rivalry? Not really. I would imagine that he's busy with his shiny new GS5, though I'd be happy to send him a patch to play with. KT747 briefly included GPU OC (only 480 though, and I don't think it was configurable?), but I think he reverted it. I'm not sure what the story was.

I'm really only doing a couple things differently from other devs: using pll3 instead of pll2 (seems more stable), and not increasing the bus bandwidth (seems to cause more problems than it's worth). Otherwise, it's just the usual stuff: add new frequencies to the clock table and add/replace power levels.