Hello everyone, glad to be a part of this community now. I came over from the droid charge and I've gotten pretty used to only having one option for ROMs and Kernels and I opened the Verizon GNex development section and practically crapped my pants.
I bought my gnex already running CM 10.1-20130204-NIGHTLY-toro and I'm fine with that but I'm looking for guidance on some good kernels. I saw a couple but they were both on the second page of the dev section which coming from the charge was never a good sign.
Basically, I'm looking for what rom/kernel combo's you guys are running as well as mods that I should look into as I get acquainted with this phone.
Already love it infinitely more than my charge haha
I think I can help you, sorry in advance for any chain-smoking-style-rambling. I also have the Verizon/Toro Galaxy Nexus. I'm a crackflasher and have flashed pretty much every rom and kernel on Android 4.2.1 december to present. My daily driver is basically TWRP recovery. I'm pretty obsessed with flashing kernels and optimizing battery life and performance. For a straight-up solid answer for a great rom and kernel, I highly recommend: [ROM] XenonHD Stable-4.0 (03.02.13) and [KERNEL][4.2.x] Fancy Kernel (Rel. #4) (FEB-05-2013). XenonHD-Stable-4.0 is on the newly released JB 4.2.1_r1.2 JOP40G and is loaded with tons of settings-imbedded features. It's has a good user interface where you can get into more advanced features when you get a better feel for things, like PIE toggles, aokp navbar, aokp notification bar customizations, propmodder. CM is also a great starting point and one of my favorite roms, so if everything's working well, I'd stay on that and flash kernels.
I highly recommend fancy kernel rel.4 because the battery life is better than any other recent kernel I've tested (all kernels on xda and rootzwiki development back 5 pages), and this is with it flashed without any tcp congestion/IO scheduler/governor/gov.settings/frequency/gpu/voltage/etc... tweaking. I do pretty extensive tests on screen time/idle/benchmark-gpu. I've only been runny fancy kernel on XeHD for a day but everything checks out so far and battery life is amazing, so it's a good place to start. This kernel has a load of settings you can tweak in a kernel tuning app; I suggest Trickster Mod, most people use it, it's free and reliable, and it stays updated to support the major kernel features. Most roms have some minimal settings for kernel tweaking, but Trickster includes color settings, special features, and governor control. ******The other thing is that if you screw up undervolting or something and have "set on boot" enabled, you can just wipe cache/dalvik to clear those settings. PGM can also be disabled this way. Not sure about other kernel tuners.****** Besides trickster mod, I would get the pimpmyrom app for buildprop, initd, sysctl, etc tweaks
Other great, recently-updated kernels to try are: AK/Anarkia/Purity, Fancy, AIR, Starkissed, Franco, Faux, ZenSeries, leankernel, Tinykernel, Fugumod, Trinity
That list is pretty much ordered as most-->least available kernel settings. All of these have been reliable for me on aosp and aokp at some point in the past couple months, especially leankernel, ZenSeries, and Tinykernel. I recommend tinykernel or leankernel as solid kernels if you don't want to do any undervolting or fancy doesn't work out somehow. Also I'd check a few pages back when you're looking for roms/kernels since there are so many.
Some basic solid kernel settings to use:
tcp congestion algorithm=[westwood or cubic];
IO scheduler=[SIO/1024MB] cache readahead;
MPU governor=[interactive(very reliable and good performance) or ondemandplus(new and battery saving) or intellidemand(reliable and battery saving];
WIFI High Performance=ON
For good screen colors/contrast, change the color multiplier ratio so it is 1-1-1.59, i.e. 90-90-143
This page has some good minimum undervolting settings to start at for MPU(cpu),CORE(gpu), and IVA(audio,video).
For regulator voltages, these are minimum values to try(from GLadOS thread. I've tried them all stable. VUSIM should be set at 1800 min though for wifi.
;
VANA: 1000 mV
V2V1: 1000 mV
VAUX3_6030: 2500 mV
VAUX1_6030: 1000 mV
VDAC: 1000 mV
VCXIO: 1000 mV
VUSIM: 1400 mV
VMMC: 1000 mV
VUSB: 3300 mV
;
::edit::Forgot stock regulator voltages, should probably include those... also some explanations of each voltage would be good to know. (All from GLadOS link above, can't quote yet):
default regulator_voltages
;
VANA: 2100 mV
V2V1: 2100 mV
VAUX3_6030: 3100 mV
VAUX1_6030: 3000 mV
VDAC: 1800 mV
VCXIO: 1800 mV
VUSIM: 2200 mV
VMMC: 1800 mV
VUSB: 3300 mV
;
;
VANA: used by General Purpose Analog Digital Converter, which supplies analog circuits like battery gauge, thermal sensor, etc.
V2V1: used by TWL6040 Audio IC
VAUX3_6030: used by Display Panel
VAUX1_6030: used by Touchscreen controller?
VDAC: used by HDMI circuit?
VCXIO: used by 38.4MHz oscillator?
VUSIM: used by Display Panel
VMMC: used by SDMMC cardcage
VUSB: used by USB transceiver
;
Hope that helps with kernels. There's a lot more information out there. GNex development updates are frequent.
If you want to try a bunch of mods without all the searching, coordinating, try JBSourcery rom. This rom has more options and mods than anything out there. It's pretty amazing. Most other roms are gonna be CM or AOKP with cherry picked features, but this one has over 3GB mods.
Wow, thank you so much. That post is exactly what I wanted to get me into this phone, you're awesome. I've never been able to use special tweaking apps or anything so I'm in for loads of fun. Thanks again! More posts are welcome but I've been put in the right direction so no worries.
Please read forum rules before posting
Questions go in Q&A
Thread moved
Thank you for your cooperation
Friendly Neighborhood Moderator
7175 said:
I think I can help you, sorry in advance for any chain-smoking-style-rambling. I also have the Verizon/Toro Galaxy Nexus. I'm a crackflasher and have flashed pretty much every rom and kernel on Android 4.2.1 december to present. My daily driver is basically TWRP recovery. I'm pretty obsessed with flashing kernels and optimizing battery life and performance. For a straight-up solid answer for a great rom and kernel, I highly recommend: [ROM] XenonHD Stable-4.0 (03.02.13) and [KERNEL][4.2.x] Fancy Kernel (Rel. #4) (FEB-05-2013). XenonHD-Stable-4.0 is on the newly released JB 4.2.1_r1.2 JOP40G and is loaded with tons of settings-imbedded features. It's has a good user interface where you can get into more advanced features when you get a better feel for things, like PIE toggles, aokp navbar, aokp notification bar customizations, propmodder. CM is also a great starting point and one of my favorite roms, so if everything's working well, I'd stay on that and flash kernels.
I highly recommend fancy kernel rel.4 because the battery life is better than any other recent kernel I've tested (all kernels on xda and rootzwiki development back 5 pages), and this is with it flashed without any tcp congestion/IO scheduler/governor/gov.settings/frequency/gpu/voltage/etc... tweaking. I do pretty extensive tests on screen time/idle/benchmark-gpu. I've only been runny fancy kernel on XeHD for a day but everything checks out so far and battery life is amazing, so it's a good place to start. This kernel has a load of settings you can tweak in a kernel tuning app; I suggest Trickster Mod, most people use it, it's free and reliable, and it stays updated to support the major kernel features. Most roms have some minimal settings for kernel tweaking, but Trickster includes color settings, special features, and governor control. ******The other thing is that if you screw up undervolting or something and have "set on boot" enabled, you can just wipe cache/dalvik to clear those settings. PGM can also be disabled this way. Not sure about other kernel tuners.****** Besides trickster mod, I would get the pimpmyrom app for buildprop, initd, sysctl, etc tweaks
Other great, recently-updated kernels to try are: AK/Anarkia/Purity, Fancy, AIR, Starkissed, Franco, Faux, ZenSeries, leankernel, Tinykernel, Fugumod, Trinity
That list is pretty much ordered as most-->least available kernel settings. All of these have been reliable for me on aosp and aokp at some point in the past couple months, especially leankernel, ZenSeries, and Tinykernel. I recommend tinykernel or leankernel as solid kernels if you don't want to do any undervolting or fancy doesn't work out somehow. Also I'd check a few pages back when you're looking for roms/kernels since there are so many.
Some basic solid kernel settings to use:
tcp congestion algorithm=[westwood or cubic];
IO scheduler=[SIO/1024MB] cache readahead;
MPU governor=[interactive(very reliable and good performance) or ondemandplus(new and battery saving) or intellidemand(reliable and battery saving];
WIFI High Performance=ON
For good screen colors/contrast, change the color multiplier ratio so it is 1-1-1.59, i.e. 90-90-143
This page has some good minimum undervolting settings to start at for MPU(cpu),CORE(gpu), and IVA(audio,video).
For regulator voltages, these are minimum values to try(from GLadOS thread. I've tried them all stable. VUSIM should be set at 1800 min though for wifi.
;
VANA: 1000 mV
V2V1: 1000 mV
VAUX3_6030: 2500 mV
VAUX1_6030: 1000 mV
VDAC: 1000 mV
VCXIO: 1000 mV
VUSIM: 1400 mV
VMMC: 1000 mV
VUSB: 3300 mV
;
::edit::Forgot stock regulator voltages, should probably include those... also some explanations of each voltage would be good to know. (All from GLadOS link above, can't quote yet):
default regulator_voltages
;
VANA: 2100 mV
V2V1: 2100 mV
VAUX3_6030: 3100 mV
VAUX1_6030: 3000 mV
VDAC: 1800 mV
VCXIO: 1800 mV
VUSIM: 2200 mV
VMMC: 1800 mV
VUSB: 3300 mV
;
;
VANA: used by General Purpose Analog Digital Converter, which supplies analog circuits like battery gauge, thermal sensor, etc.
V2V1: used by TWL6040 Audio IC
VAUX3_6030: used by Display Panel
VAUX1_6030: used by Touchscreen controller?
VDAC: used by HDMI circuit?
VCXIO: used by 38.4MHz oscillator?
VUSIM: used by Display Panel
VMMC: used by SDMMC cardcage
VUSB: used by USB transceiver
;
Hope that helps with kernels. There's a lot more information out there. GNex development updates are frequent.
If you want to try a bunch of mods without all the searching, coordinating, try JBSourcery rom. This rom has more options and mods than anything out there. It's pretty amazing. Most other roms are gonna be CM or AOKP with cherry picked features, but this one has over 3GB mods.
Click to expand...
Click to collapse
Ditto to a fellow crackflasher. I'm also using XENON HD Stable 4.0 but using Franco kernel r364. Thank you very much for the wealth of info; I'm a performance guru by trade. I'll try out the fancy kernel.
BTW, I seem to get the best TCP performance using cubic.
Perhaps we can discuss further your performance harness. I'm struggling to figure out how to establish a reliable benchmark environment to measure the results of the various perf settings.
What do you like about that kernel?
Hi, I am new here and i need help. what should i do if my carrier dont give me update like 4.2.1. im from philippines and what should i do to have an OTA UPDATE?
sushibabaes said:
Hi, I am new here and i need help. what should i do if my carrier dont give me update like 4.2.1. im from philippines and what should i do to have an OTA UPDATE?
Click to expand...
Click to collapse
I don't think 4.2 rollout for regional variants of the GN have started yet, you might wanna check the device version under Maps>Settings>About, if it's anything other than takju/yakju (like yakjuux, yakjuwx, etc.) then as of now there's no OTA available, if you really wan't 4.2.1 you'll have to flash to takju/yakju manually, the guide is in the sticky.
reysonance said:
I don't think 4.2 rollout for regional variants of the GN have started yet, you might wanna check the device version under Maps>Settings>About, if it's anything other than takju/yakju (like yakjuux, yakjuwx, etc.) then as of now there's no OTA available, if you really wan't 4.2.1 you'll have to flash to takju/yakju manually, the guide is in the sticky.
Click to expand...
Click to collapse
my phone is locked to a carrier and is it ok if i flash on yakju manually?
Sent from my S100 using Xparent Red Tapatalk 2
sushibabaes said:
my phone is locked to a carrier and is it ok if i flash on yakju manually?
Sent from my S100 using Xparent Red Tapatalk 2
Click to expand...
Click to collapse
Never seen that variant before, the only variant that I know was locked is VZW/Sprint and DoCoMo, what does it says under Maps>Settings>About?
EDIT: A quick Googling brings up multiple result from various Philippines tech sites, it doesn't says anything about being a different variant though.
reysonance said:
Never seen that variant before, the only variant that I know was locked is VZW/Sprint and DoCoMo, what does it says under Maps>Settings>About?
EDIT: A quick Googling brings up multiple result from various Philippines tech sites, it doesn't says anything about being a different variant though.
Click to expand...
Click to collapse
Oh i see, i get it nw. Now i understand that it was just network locked. Cnt use other sim. Tnx for d help
Sent from my GT-S5360 using Xparent Red Tapatalk 2
sushibabaes said:
Oh i see, i get it nw. Now i understand that it was just network locked. Cnt use other sim. Tnx for d help
Sent from my GT-S5360 using Xparent Red Tapatalk 2
Click to expand...
Click to collapse
Yep, looking at the thread for the GN in Philippines on XDA, it seems that it's just a regular yakjuxw, you can convert it to yakju/takju easy as pie.
reysonance said:
Yep, looking at the thread for the GN in Philippines on XDA, it seems that it's just a regular yakjuxw, you can convert it to yakju/takju easy as pie.
Click to expand...
Click to collapse
How to cnvert bro!
Sent from my GT-S5360 using Xparent Red Tapatalk 2
sushibabaes said:
How to cnvert bro!
Sent from my GT-S5360 using Xparent Red Tapatalk 2
Click to expand...
Click to collapse
Check the stickied thread.
was1958 said:
Ditto to a fellow crackflasher. I'm also using XENON HD Stable 4.0 but using Franco kernel r364. Thank you very much for the wealth of info; I'm a performance guru by trade. I'll try out the fancy kernel.
BTW, I seem to get the best TCP performance using cubic.
Perhaps we can discuss further your performance harness. I'm struggling to figure out how to establish a reliable benchmark environment to measure the results of the various perf settings.
Click to expand...
Click to collapse
Moin moin! Nice to find another performance guru. I've also been having hard time finding a reliable way to check benchmark-style performance for CORE and MPU, and especially when testing IVA?? -- I've just been running video stuff and music to find this UV but not sure about stress testing. I do use quadrant for overall stability/CORE stability as well as stabilitytest and of course PC-ported superPI!! (only goes to 512k pi calculation lol, oh well). Since wifi/cdma-lte-radio can change battery results so much depending on what gapps and network-based apps feel like doing, I've started to generate multiple results by first minimizing my testing environment: using airplane mode, killing gapps bloat and anything else that doesn't cause reboot, then I'll do just radio data connection like 3g and maybe sync to keep it real, and after that I'll test with all the functionality enabled. Benching with WIFI on has caused so much variation in battery testing results though... I'm almost ready to throw it out of the equation when evaluating kernels. Most kernels of the same age have the same wifi drivers anyway. If there's anything on the kernel's feature list or update log, I'll take notice and compare with other kernels across the board... That's the gist how I look at performance.
I've come to android scene after PC overclocking for over 10 years now which is really so much simpler(watching the monthly energy bill is way easier than a battery), refined, simple... just push the OC minimizing heat until you hit the wall or need LN2... start with cpu, then memory, then graphics with your 2000W OCZ PSU and tricked-out DFI,ASUS,MSI board that has 200lb of custom water cooling and industrial heatsinks all inside a sleak streamlined antec P-series case with world-class sound dampening (so muffled you can just hear it "breathing" when the video card fans rev up and down 'playing' 3dmark); then prime95 or intelcpuburn the s*** out of it, and finally fine tweak memory timings and motherboard regulator voltages to max your 3dmark, pcmark, and superpi scores. BAM, done. Haven't even booted into BIOS on my 4ghz-on-air i7 rig in 3 YEARS now after initial OC/tweaking, run at max OC 24/7 to be super chic, natuerlich... "power savings??" - what the s*** is that? Not part of my PC vocabulary.
Related
I’ve recently added some modifications to the Cyanogenmod kernel. They include overclocking up to 2ghz as well as lower idle voltages (undervolting) and a higher default maximum frequency. The maximum frequency is now 1516800hz by default. It can be changed up to 2016000hz. Frequencies higher than 1612800hz are unstable when using the ondemand governor on my phone, they seem to be stable when used with the performance governor or even the conservative one, so I think it might be related to the fast frequency switching. Near and at 2ghz the phone gets really hot in a matter of minutes so be careful, you can probably damage it using this kernel. Thus I take no responsibility for any damages resulting from using this kernel!
My frequency(in hz)/voltage(in mV)-table is the following:
245760 750
368640 800
768000 900
806400 925
1113600 1000
1209600 1050
1305600 1100
1401600 1150
1497600 1225
1516800 1225
1612800 1300
1708800 1450
1804800 1500
1920000 1500
2016000 1500
PS:
I just was able to lower the voltages a bit, I've attached the new kernel. I am running my phone at 1.92ghz and it seems to be pretty stable so far. I have to use it with the conservative governor, the ondemand and interactive ones make it lock up. Using the conservative one it clocks up and down on demand as well, though slower.
245760 750
368640 800
768000 900
806400 925
1113600 1000
1209600 1050
1305600 1100
1401600 1150
1516800 1200
1612800 1250
1708800 1300
1804800 1400
1920000 1450
2016000 1500
PPS:
I made a third version containing a crude hack to fix the problem with the governors. Now my phone runs at min 245mhz and max 1920mhz using the ondemand governor. So far everything is peachy
ILWT kernel is like a mirror of this.. :/
It doesn't allow frequencies that high, does it? I didn't actually try it, but the description only mentions lower frequencies.
Dekar said:
It doesn't allow frequencies that high, does it? I didn't actually try it, but the description only mentions lower frequencies.
Click to expand...
Click to collapse
Obviously that guy is a troll....IWLT does not offer frequencies up to 2ghz.
Anyway, us folks in the g2 section appreciate each and every kernel we get as they are RARE. Don't mind the trolls.
G1ForFun said:
Obviously that guy is a troll....IWLT does not offer frequencies up to 2ghz.
Anyway, us folks in the g2 section appreciate each and every kernel we get as they are RARE. Don't mind the trolls.
Click to expand...
Click to collapse
How was I trolling? I wasn't putting down the kernel or anything it was simply a neutral statement. Go back under your bridge.
erichung_13 said:
How was I trolling? I wasn't putting down the kernel or anything it was simply a neutral statement. Go back under your bridge.
Click to expand...
Click to collapse
Great contribution to the thread.
How were you trolling? You come into the thread and write one sentence stating that its a mirror of another kernel (which its not) and then put a :/ face after it? Nuff said.
On another note, I fastbooted this kernel and its running great for me. Haven't perm flashed it yet though.
Sent from my HTC Vision using XDA App
It runs fine on my phone so far as well. But I wasn't expecting much trouble anyway since it is basically the latest CM kernel. The undervolting shouldn't be a problem for most phones and the extreme overclocking isn't active by default.
How do you flash this kernel?
It's easiest using fastboot and adb from the android sdk. I guess I could also build a flashable zip, but I don't feel like figuring how that works. If someone makes one, feel free to attach it here.
Flashing the kernel:
Code:
fastboot flash zimage zImage
Flashing the new WiFi module:
Code:
adb remount
adb push bcm4329.ko /system/lib/modules
After using my kernel for quite a while it seems to be pretty stable on my phone. Running at 2GHz I sometimes get random freezes, but 1.92GHz seems stable for daily use. I also tried playing 3d games on 1.92GHz for about half an hour and even though the phone got noticeably hot everything went peachy.
I usually set the permissions once I push the new wifi module. Is that not neccessary?
Sent from my HTC Vision using XDA App
I don't think it is, at least not for being able to use it. It could have security implications, but I don't see any since adb runs in the root users context and thus the file would be owned by root. Users shouldn't be able to modify it in any way.
Hi Dekar, do I need to use the new Wifi Kernel for this Kernel to function properly?
Yeah you have to use the wifi module I've attached. If you have stability problems tell me and I'll upload the non-undervolted version I made for someone else.
What's battery life like with the undervolt? I'm currently using the stock CM7 kernel with 245/1113 interactive, with only data, sync, and auto-brightness (no GPS/Bluetooth/etc) in good coverage areas and I'm going like 1% down every 1-5 minutes or so of regular use (basically just web browsing and texting). Not sure if it's the settings or my (stock/original) battery or what.
magus57 said:
What's battery life like with the undervolt? I'm currently using the stock CM7 kernel with 245/1113 interactive, with only data, sync, and auto-brightness (no GPS/Bluetooth/etc) in good coverage areas and I'm going like 1% down every 1-5 minutes or so of regular use (basically just web browsing and texting). Not sure if it's the settings or my (stock/original) battery or what.
Click to expand...
Click to collapse
Thats about normal for this kernel.
Well I got my Vision used and it came with the Mugen 1800mAh extended battery, thus I can't really compare it to a stock one. Also I didn't use the stock kernel for long. But I am really pleased with the battery life, my G1 was far worse.
will this kernel work with ICS? Kindly advise.
tried on virtuous quattro, ended in a boot loop D:
Hard reboot after logo screen back to recovery, zimage does not like my phone apparently. Tried several flashing methods. No go.
Ok my understanding is that I can't copy these zips to my SD card root and flash with clockwork mod recovery? I'm fairly familiar with flashing cm roms but this will be my first kernel flash.
Also, if I preform a full back up, will that also backup my current kernel should I need to revert to it in the event this kernel doesn't mesh well with my hardware?
Thanks,
RiE
Sent from my HTC Vision
Hey guys in the forums!
Is there a kernel out there which supports overclocking up to 1.6 GHz???
I got my GNex about a month ago, and I have been on the loockout for a kernel, which supports extreme overclocking, I'm used to that speed from my SGS II and I have had several requests on my root toolbox. I'm not able to find a version, for GSM, but for CDMA...
It's kinda taken the piss, I'm also getting quite fed up, because the GNex is capable of so much more.
I am currently ruunning CCND with the CND kernel, with a clock speed of 720 MHz, but when it comes to gaming (e.g NFS hot pursiut) I do like to have a lush (lag free)graphics qualitiy, which is just not possible with 1.2 GHz...
I would appreciate it if someone could post a link.
This should be XDA only! I do not support other forums, like rootzwiki. If I would want a rootzwiki link/download I would go to that forum, but I'm here so I would like links from here....
thx, familyguy/Beatsleigher
Please post answers, with kernels EXCAEPT franco.kernel!!! I'm sick and tired of hearing/reading thins name!
Search for franco.kernel 18.2 in development section.
Sent from my Galaxy Nexus using xda premium
MS. said:
Search for franco.kernel 18.2 in development section.
Click to expand...
Click to collapse
+1 for the Franco kernel #18.2 - actually it supports up to 1.65 GHz!!
A word of warning however - obviously this degree of overclocking comes with inherent risks, and like all hardware there are slight individual tolerances, so not all GNs will tolerate this speed. The other consideration is the heat generated from such OC'ing will sometimes cause thermal CPU throttling, meaning the real-world speed may actually be lower than stock.
asianboy9 said:
+1 for the Franco kernel #18.2 - actually it supports up to 1.65 GHz!!
A word of warning however - obviously this degree of overclocking comes with inherent risks, and like all hardware there are slight individual tolerances, so not all GNs will tolerate this speed. The other consideration is the heat generated from such OC'ing will sometimes cause thermal CPU throttling, meaning the real-world speed may actually be lower than stock.
Click to expand...
Click to collapse
Honestly I've had less issues with franco at 1.65 GHz then others at 1.5 GHz. Just food for thought
Sent from my Galaxy Nexus using xda premium
Well, I'm currently using this franco kernel, tried overclocking, immediatly to 1.65 GHz, then my phone crashed, then I tried again, then my ROM gave up it's ghost... But now It's working semi-good...
Thanks for answering so quick, with the good and helpful answers!
with 1,5 or 1.60\65 mhz slot there are:
FRANCO's
17--max 1500 mhz
17.1--max 1500 mhz
17.2--max 1500 mhz
18--max 1200 mhz\new kernel rebased
18.1--max 1500 mhz\new kernel rebased
18.2--max 1650+1500 and 1600 mhz slots\new kernel rebased
MORFIC's
many flavors in proper 3ad,max freq. 1536 mhz without 1350 slot and others intermediate slots between 1500 and 1190.you can choose also many related Gpu clock version (384\520-550)
new high-power 1670 mhz kernels series from morfic in cooking!
IMOSEYON's
3 versions with high-frequencies
Notrim--1650 mhz max,1500 slot inside and 1200 downside.
Notrim2--1650 mhz max,1500 slot inside and 1200 downside.
Notrim3--1650 mhz max,1500 slot inside and 1350 downside.
read each 3ad for technical explanation and proper setting of those (imoseyon's first)
Goal of this little project is to dispel myths and hearsay and trying to assess the elusive performance of custom kernels for our beloved SGS I9000.
So far this has proven quite challenging as there is no single good benchmark on Android (yet):
a lot of people have been misled by ridiculous Quadrant scores: ridiculous because, with some small tweaks which do not affect real performance in any way, shape or form, it is possible to boost the Quadrant score by factor 3x.
You're free to believe that your SGS I9000 which scores 3000+ on Quadrant is faster than a SGS II, but then please leave this thread and move on.
some kernels may seem smooth with some games, and get high scores on some synthetic benchmark, yet the UI appears "laggy" and stutters a lot in comparison to other kernels which score lower on the same benchmark
some popular benchmarks give results with unacceptably low reproducibility, i.e. if you run them multiple times without changing a thing on your system, you get scores varying by 50% of more, in a completely random fashion
most popular benchmarks do not measure or take into account multitasking and CPU contention with other applications, yet on a typical usage one has background tasks such as the media scanner or synchronization which kick in often and unpredictably
So this will be mostly a work in progress, i'm testing several benchmarks and several kernels in multiple combinations, trying to analyze which benchmarks offer certain criteria which make them useful, namely:
Reproducibility of results: running the same tests multiple times, should result in a very small variance of the final score
Performance separation: benchmarks which are too "synthetic" and show only a dependency on clock speed are not useful to discriminate "fast" kernels from "slow" kernels
Performance representation: we all know when a kernel "looks" or "feels" fast or smooth. If a benchmarks shows you that a "laggy" kernel scores higher than a fast and responsive one, it's likely that the benchmark is not well designed
I'll work more on this thread explaining my (current) choice of tests and what they're good for.
But for now i'll just post a link to the summary table, and give a brief recommendation concerning popular ICS kernels; recommendation which i'll explain in the coming days.
Base ROM:
Slim ICS 2.8
(because is fast, smooth and has the least background stuff of all ICS ROMs which i tested)
Test Conditions:
Whenever possible, i tried to overclock the kernels to 1.2GHz which most / all phones should have no trouble achieving.
In case of Semaphore i had to use the bus / live overclock but it wasn't fully stable at 1.2GHz on my phone so i ran most of the tests at 1.14GHz.
Tested Kernels:
Stock Teamhacksung V17
Devil 1.1.6b BFS
Devil 1.1.6b CFS
Icy Glitch V14 b
Semaphore ICS 0.9.5b
Recommendation:
Devil 1.1.6b CFS, Icy Glitch V14b (with SmartassV2 and FIOPS), and Midnight ICS (with a tweaked Conservative) are trading blows for the fastest kernel.
At the time of testing, Midnight is slightly worse in terms of overclocking though, apparently due to different voltages, also it doesn't allow overclocking beyond 1.2GHz.
But what's interesting is that it achieves great performance while using a tweaked conservative governor.
Devil 1.1.6b BFS is good but obviously inferior to its CFS brother.
Semaphore has the lowest cache and memory latency in the multithreaded test, it also has impressive sd card read speed and in general appears super responsive, but it's a bit worse in 3D gaming and especially it lacks "true" overclocking, "live overclocking" changes the bus clock and is way more unstable, in fact on my phone i couldn't run it stable at 1.2GHz.
All kernels are significantly faster than the stock teamhacksung's kernel, so you have no excuses not to upgrade to one of the popular custom kernels!
ICS 4.0.4
Started testing Android ICS 4.0.4 kernels on Slim ICS 3.2.
All tested kernels are "huge mem" versions with 380+MB of available RAM, without breaking video playback or 720p recording.
Summary:
the stock kernel from Teamhacksung is now a very respectable performer, unless you plan to overclock probably you don't need to install one of the other kernels
Semaphore, Midnight and Devil are all very fast and smooth
Results table:
https://docs.google.com/spreadsheet/ccc?key=0AuBUEB4dGFSSdHIyN2VIeWU4QnhLOFpJejFPWDh5S1E
Res 1
One request for the kernel developers:
could you please post me what are your preferred / recommended settings in terms of Governor and I/O Scheduler?
Only one configuration per kernel please, as running these tests is rather time consuming.
Test Settings
So for anybody who wants to follow the same methodology as I used to test kernels, please pay attention that in some tests i didn't use stock settings, to try to improve the reproducibility of the results.
Before all test, i put the phone in flight mode, and disable all synch services.
Antutu: DB I/O and SD Write and Read have poor reproducibility. So i run these tests separately 5 times, and take the best scores.
RealPi: the number of iterations is increased by factor 10x i.e.: 100000 digits
MPAC: lots of customization here. Also be careful as it's not very stable and some settings will make it crash.
All tests: 8 threads (or 8 producer / consumer pairs)
CPU: 10000000 iterations, use case: integer (i'm considering to add logical too)
Memory: stock apart for nr of threads. Repeat the test 5 times and get best numbers
Cache: 40 iterations
Res 3
With this should be enough.
Judging from those results, CFS Devil looks really promising.
Semaphore live oc stability issues happen only on Slim ICS indeed. On ICSSGS I have perfect stability at 1.2 ghz. And performance is just great, paired with very good battery life.
GT-i9000 / ICSSGS 4.2 / Semaphore 0.9.0
A quick question: did you lock the max freq to eliminate the "governor" variable?
Because each kernel could have governor's tweaks that the other don't.
Based on what you posted here, the differences between Glitch and Devil is practically none.
I tested both and didn't feel any tangible difference, in the end, it comes down to the unique features of each kernel.
Overclocking bus vs adding an extra step aren't even slightly comparable. Maybe do tests not overclocked?
Also there is a new glitch build with 100% working bln.
Sent from my GT-I9000 using xda premium
+1 for tests without overclock. Majority of us, users do not overclock. Maybe a seperate test for overclocking could be nice , but comparisons should be done with stock speeds imho.
Thanks for the time and effort. We needed this.
Overclocking bus Vs adding an extra step isn't an apple to apple comparison, I agree.
However my goal was to use each kernel in the best possible way, and if some kernels have the possibility to use higher multipliers / extra frequency steps, that is an advantage for the user, compared to the kernels who only offer live overclock.
Don't get me wrong, i love Semaphore and i've been using it for a long time.
And i have no doubt that some users can get it stable with live overclock to 1.2GHz.
But that is the ceiling, while with other kernels even my phone can reach stable overclocks of 1.5GHz, and that is something to consider.
I chose as the basis for my tests an overclock of 1.2GHz because it's something which practically everybody can use, without massive battery drain, overheat or shortening the life of the device.
I'll try to add measurements at stock speeds for those who don't like to overclock.
cba1986 said:
A quick question: did you lock the max freq to eliminate the "governor" variable?
Because each kernel could have governor's tweaks that the other don't.
Click to expand...
Click to collapse
I didn't want to take the governor variable out.
Because, as you said, each kernel could use (and often does) governor tweaks which make the kernel "special" or different from the others, and that has to be taken into account in evaluating them.
Because nobody will use the phone locked at the maximum frequency.
So for me the governor and its tweaks is part of the user experience of a certain kernel, and a distinctive factor.
At the end, all kernels are coming from almost the same sources, so it's the little things which make the difference.
phzi said:
Also there is a new glitch build with 100% working bln.
Sent from my GT-I9000 using xda premium
Click to expand...
Click to collapse
That's great!
This test i run is not the "be all end all", it was just a recommendation at the time of writing.
Pipperox said:
Overclocking bus Vs adding an extra step isn't an apple to apple comparison, I agree.
However my goal was to use each kernel in the best possible way, and if some kernels have the possibility to use higher multipliers / extra frequency steps, that is an advantage for the user, compared to the kernels who only offer live overclock.
Click to expand...
Click to collapse
Agreed but, then again, benchmarks should be done at original CPU clock IMHO.
Otherwise, results are distorted.
HiKsFiles said:
Agreed but, then again, benchmarks should be done at original CPU clock IMHO.
Otherwise, results are distorted.
Click to expand...
Click to collapse
agreed. Especially since stock team hacksung seems to be clocked at 1GHz
what's the point of the comparison? Really?
As expected, there is no noticeable difference between all 1.2 GHz kernels.
It's not as if there was a real difference between them anyway.
zorxd said:
agreed. Especially since stock team hacksung seems to be clocked at 1GHz
what's the point of the comparison? Really?
As expected, there is no noticeable difference between all 1.2 GHz kernels.
It's not as if there was a real difference between them anyway.
Click to expand...
Click to collapse
That's not quite true.
If you look closer, you'll see that Devil CFS has quite a distinct advantage over all others in 3D tests.
The point of the comparison between stock hacksung @1.0GHz and the others, who can overclock, is to show what kind of benefit you get from switching to kernels which are overclock friendly.
Especially considering that you can't assume that a 20% clock speed increase will bring a 20% performance speedup across the board.
At last, i'd say that you may have "expected" that the kernels tested at 1.2 GHz don't have such a difference in performance.
But expectations have to be verified.
I tried to answer the questions:
On Devil's kernel, is BFS really better than CFS?
The "popular belief" is that BFS is faster than CFS.
According to my tests, CFS results faster instead.
Another question may be, what kernel gives you the best gaming performance.
If you pay attention to the An3D Bench XL, you'll see that Semaphore 0.9.5b, even overclocked a 1.2GHz, is significantly slower than Devil.
If i recall correctly Semaphore Author claimed that some kernel developers overclock GPU, and he didn't. Idk anything about it, but i recall something about it.
Is it possible to overclock only GPU, without overclocking CPU??
zipgenius said:
so you should benchmark them without setting anything. Average users don't overclock and don't change governor or scheduler: they flash the new kernel and stop.
Click to expand...
Click to collapse
I completely agree on benchmarking every kernel at the same frequency (stock 1Ghz max) but I think there are two different options for further benchmarking:
1) Benchmark kernels configured as similar as possible regarding CPU governor, IO scheduler, readahead -> comparable results for all kernels.
2) Benchmark kernels with default settings (only makes sense if all compared kernels are optimized for similar purpose like performance, does not make sense if a kernel does *not* focus on max. performance and uses e.g. Conservative CPU governor as default setting.
@Pipperox: Would it be possible to check my Mindnight-ICS dev version with your benchmark suite? I'd be really interested in the results as you use the same setup for all kernels (1.2Ghz would not be a problem, does not use LiveOC but old school 1/1.128/1.2Ghz OC).
Interesting thread... I never used devil's CFS version, always BFS. Will try CFS out now.
@Mialwe Where can we get your ics kernel?
mialwe said:
I completely agree on benchmarking every kernel at the same frequency (stock 1Ghz max) but I think there are two different options for further benchmarking:
1) Benchmark kernels configured as similar as possible regarding CPU governor, IO scheduler, readahead -> comparable results for all kernels.
2) Benchmark kernels with default settings (only makes sense if all compared kernels are optimized for similar purpose like performance, does not make sense if a kernel does *not* focus on max. performance and uses e.g. Conservative CPU governor as default setting.
@Pipperox: Would it be possible to check my Mindnight-ICS dev version with your benchmark suite? I'd be really interested in the results as you use the same setup for all kernels (1.2Ghz would not be a problem, does not use LiveOC but old school 1/1.128/1.2Ghz OC).
Click to expand...
Click to collapse
Sorry guys, i understand your logic but i do not fully agree with it.
I'm not comparing overclocked kernels with heavy tweaking of voltages and special settings with which they only work.
I did the "poor man"'s overclock, setting to 1.2GHz using NSTools, a setting where 95% of phones should have no problem working.
I think that if some kernels offer you this possibility while others do not, it is fair to use this "advantage" that they have over the other kernels.
Because a lot of users will have the possibility to do the same as i do, without esoteric knowledge and with just a couple of clicks in the menus.
That being said, "due to popular demand" i will also try to retest those kernels at 1.0GHz as soon as i get a bit of time.
BUT in my recommendations, i will also consider the overclocking capabilities.
@mialwe: sure, i'll give a run to your kernel as well!
mialwe said:
@Pipperox: Would it be possible to check my Mindnight-ICS dev version with your benchmark suite? I'd be really interested in the results as you use the same setup for all kernels (1.2Ghz would not be a problem, does not use LiveOC but old school 1/1.128/1.2Ghz OC).
Click to expand...
Click to collapse
Dude, sorry but i don't seem to find your ICS kernel anywhere.. can you provide a link?
So, I know we all have different phones, and after looking at a review of some voltages to try, I changed all the stock voltages to the ones I saw and saved them as default (don't ask me why, I do not know myself). Since this, I set my phone to hotplug and the phone has had multiple Sleep of Death cases. I think it has to do with the voltage but it could just be my phone not liking hotplug because it stops if I turn off hotplug. Or hell it could be that both together are causing it. So I was wondering could someone provide me with stock voltages at 384, 729, 1036, 1228 and 1344 mhz. Or better yet if you could provide me with the best voltages that help save a little battery life. Thank You! (Also I have been looking but have not found the stock voltage for the numbers I listed above)
stock voltages are 1025, 1203, 1317, 1380. 1350mhz is not a stock clock speed so theres no stock voltages. you can try these undervolt values, they are pretty conservative 850, 950, 1050, 1175 and 1250. remember to do nandroid backup first.
undervolt will not really gain you any noticeable difference in battery life, the cpu uses relatively little power to begin with so reducing it by a few hundred mv is not going to make a different with normal use. If you want to try it out just start from stock and go down 25-50mv at a time and test it with some games or stress test.
neotekz said:
stock voltages are 1025, 1203, 1317, 1380. 1350mhz is not a stock clock speed so theres no stock voltages. you can try these undervolt values, they are pretty conservative 850, 950, 1050, 1175 and 1250. remember to do nandroid backup first.
undervolt will not really gain you any noticeable difference in battery life, the cpu uses relatively little power to begin with so reducing it by a few hundred mv is not going to make a different with normal use. If you want to try it out just start from stock and go down 25-50mv at a time and test it with some games or stress test.
Click to expand...
Click to collapse
Thank you. If they really don't make a difference I will leave them be at stock. Any good value for 1350? Or should I just stick with 1250mV? Just really trying to get 2 days out of the phone, but I assume I cannot complain since I am already getting 4h of screen time with normal use on the 2000mah battery. I will look around here some more and see if I can find any more useful tips on better battery life. Thanks again!
neotekz said:
stock voltages are 1025, 1203, 1317, 1380. 1350mhz is not a stock clock speed so theres no stock voltages. you can try these undervolt values, they are pretty conservative 850, 950, 1050, 1175 and 1250. remember to do nandroid backup first.
undervolt will not really gain you any noticeable difference in battery life, the cpu uses relatively little power to begin with so reducing it by a few hundred mv is not going to make a different with normal use. If you want to try it out just start from stock and go down 25-50mv at a time and test it with some games or stress test.
Click to expand...
Click to collapse
I wish I would have read this post a few days ago prior to changing my voltage settings also. Only to learn that I wasn't doing my GNex a significant favor.
falconfan said:
I wish I would have read this post a few days ago prior to changing my voltage settings also. Only to learn that I wasn't doing my GNex a significant favor.
Click to expand...
Click to collapse
Ya thankfully read it, tried these voltages with hotplug on and screen off settings and the phone did not sleep of death this time, but it froze right after wakeup, so no hotplug for me, just conservative.
Also, be very careful with CORE and IVA undervolting. In my case, undervolting theese too much caused the exactly same issue you are dealing with. Same goes with profiles for SetCPU profiles which also causes the phone to behave like that in some cases
keem85 said:
Also, be very careful with CORE and IVA undervolting. In my case, undervolting theese too much caused the exactly same issue you are dealing with. Same goes with profiles for SetCPU profiles which also causes the phone to behave like that in some cases
Click to expand...
Click to collapse
So for what I can make out from your post, some reason its setcpu profiles not working, not the phones cpu itself not allowing it be put into hotplug mode? also, sorry for the noob question but what is the difference between CORE and IVA undervolting? Or should I say could you explain them to me.
If you are going to use profiles, your phone should be very stable. In other words undervolting makes it instable if you tweak it too much. Core and iva are very sensitive. Core is your graphic gpu. Let them stay at the normal settings. Use milestone franco stable build undervolting only the cpu. Rather 700 mhz at the lowest. Try it out
EDIT: "If you are going to use profiles, your phone should be very stable BEFORE setting profiles"
Sent from my Galaxy Nexus using xda premium
Re: Post by user splus in Franco.kernel thread
Sorry to post in this forum, but I don't have the minimum post count yet to post in the development forums
I read a post today by splus which I found very interesting,
In r220 hispeed_freq parameter in governor control has been changed from 1200000 (was an old value from first version of Franco JB kernel) to 1228000. As a result CPU now spends most of its time at either at 384 or 1228 MHz, and much less time at higher frequencies.
For some reason if speed_freq value is set to a step lower than 1228000 then it will make CPU to use all higher frequencies in a more balanced way.
What I noticed is that for 1036 it needs to have slightly higher value of 1037000, because 1036000 will put the CPU only to 729 MHz. This is probably because the real 1036 MHz frequency is something like 1036.xx MHz, so it's best to set speed_freq value to a 1000 more than the desired frequency.
Hispeed_freq parameter is just an initial higher speed frequency that CPU will jump to when there's some CPU load. And if the CPU load is still high after the CPU goes into this frequency (in other words if this frequency is not enough to finish the job) then interactive governor will put the CPU in even higher frequencies.
On stock JB kernel max frequency is 1200 MHz, and hispeed_freq is 700000.
When speed_freq is set to 1228000 it will use mostly 384 and 1228 MHz frequencies.
Set speed_freq to 1037000 (or previous 1200000) and more higher frequencies will be used.
There's certainly many possibilities to play with min and max CPU values, together with speed_freq to come to the best values. And probably for each max CPU frequency different speed_freq value would work best...
Click to expand...
Click to collapse
but I wanted to learn more so I did a lot of Googling about the parameters of the interactive governor. Unfortunately, I kept finding the same few beginners' guides to the different governors available, explaining and comparing their capabilities. There was no advanced explanation of the parameters or their possible valid values.
I found this post by RootzWiki user abqnm, which shed a little more light on the hispeed_freq parameter, and input_boost also. From what I've read on various sites, the input_boost seems to be a binary parameter, so setting it to 1 should jump the CPU up to the frequency specified in hispeed_freq immediately upon detecting a screen touch event. This would make your GNex feel a bit more responsive, without having to wait for the CPU to hit load, but it could negatively affect battery life. In my case, running 729/1612 with hispeed_freq set down at 1036MHz (1037000 in governor control), it's not that big a jump and opening a couple of apps would likely push my speed up beyond it soon anyway, so the battery hit would probably not be much.
As splus said:
After lot of fiddling I found it works best when hispeed_freq is set to 1037000 (not 1036000, it looks like that frequency is actually closer to 1037 MHz so 1036000 doesn't "reach" it).
Click to expand...
Click to collapse
so using 1036000 in governor control would correspond to the next step down, 729MHz. I know it's easy enough to stick on an extra 1000 for safety, to ensure we hit the right steps, but I'd be curious to know the exact kHz values we could be using.
I'm off to start experimenting with undervolting these new CPU freqs, and my 512GPU Core to reduce my temps a bit.
In case anyone asks, I'm on stock JRO03C w/Franco r220 512GPU.
Very good post! Welcome to XDA! :good:
I'll link to your post on the franco thread just so it gets a couple views from people there.
Edit: I see that you've actually been here awhile! Go help a few more people so you can contribute in the Dev forum.
Yup, that's me... total lurker! I usually defer to the wisdom of the devs and seasoned members, and 99% of the time if I've had a problem/question re my Nexus it's already been posted and there are whole conversations for me to read and digest. I hate the idea of clogging up a thread with a "me too" or "thanks" post, so generally if I don't have something useful to contribute I keep quiet and hang in the shadows. I only come out to feed.
So basically, I'm a knowledge vampire.
That's enough OT... Franco stuff!
I've previously read droidphile's governors thread to which splus linked in their reply to your repost in Franco.kernel. In post #2, containing the governor tweaks (which I found very useful) even droidphile seems to have the wrong idea about the "hispeed_freq" parameter, stating:
(Default value is scaling max freq)
Click to expand...
Click to collapse
The same section also omits any mention of the "input_boost" parameter.
My undervolting is going well. Inspired by the voltages on rogersnm's signature, I'm currently running these:
Code:
1612 - 800 mV
1536 - 750 mV
1420 - 750 mV
1305 - 750 mV
1228 - 725 mV
1036 - 725 mV
729 - 700 mV
384 - 700mV
CORE -
512/384 - 900 mV
307 - 900 mV
153 - 825 mV
IVA -
266 - 600 mV
133 - 600 mV
I added an extra 100mV to the seemingly rock bottom CPU voltages for safety, but I'll try to reduce them gradually. I've been stable for over 40 hours so far on this setup. With r220, Franco really seems to have nailed it!
BTW, thanks for reposting in the Franco.kernel thread :highfive:
Fantastic. Keep us updated on your progress with voltages, seems like you're doing a great job!
Also, happy to help!
nemotheblue said:
Code:
1612 - 800 mV
1536 - 750 mV
1420 - 750 mV
1305 - 750 mV
1228 - 725 mV
1036 - 725 mV
729 - 700 mV
384 - 700mV
CORE -
512/384 - 900 mV
307 - 900 mV
153 - 825 mV
IVA -
266 - 600 mV
133 - 600 mV
I added an extra 100mV to the seemingly rock bottom CPU voltages for safety, but I'll try to reduce them gradually. I've been stable for over 40 hours so far on this setup. With r220, Franco really seems to have nailed it!
BTW, thanks for reposting in the Franco.kernel thread :highfive:
Click to expand...
Click to collapse
I'm trying these too. So far so good!
Hi nemotheblue. Good post and findings!
I'm just looking at those voltage values you wrote - are you sure you turned off the SR?
If you haven't don't turn it off with those voltages because you'll get an instant reboot, they seem super low.
Rogersnm wrote and fiddled a lot with voltages, some very good posts.
Better go back to stock voltages, turn off the SR, and then go little by little down with frequencies. When adjusting each frequency best is to set that particular frequency as min (or max if it is higher) frequency so the CPU actually uses it.
And when you get a reboot then just use 25mV higher than the one with reboot.
I'd suggest to have fsync turned on when you fiddle with voltages because that will lessen the possibility of loss of data when phone reboots.
Another thing to have in mind is that even some combinations of frequencies do not work together. Some frequency might work OK with certain voltage with certain max/min frequencies but might not with other min/max frequencies. It looks like the actual change from one frequency to another (and depends from which to which) can determine a lot if a voltage is stable or not.
Also, it apparently very much depends on a ROM you use - different ROMs will probably need readjustment of voltage table.
Undervolting actually won't help much with battery life, smart reflex does a very good job already. It would help most if you game a lot or use your phone heavily, so then when higher frequencies are used the phone would get less hot and use slightly less power.
Otherwise, and especially if you change ROMs, I'd say it isn't worth the trouble.
nemotheblue said:
..................................
I've previously read droidphile's governors thread to which splus linked in their reply to your repost in Franco.kernel. In post #2, containing the governor tweaks (which I found very useful) even droidphile seems to have the wrong idea about the "hispeed_freq" parameter, stating:
..............................
Click to expand...
Click to collapse
Since there's lot of info to cover, mistakes can happen. I'll correct it if something is wrong.
Anyhow, if you check the interactive governor code,
if (!hispeed_freq)
hispeed_freq = policy->max;
This means if kernel default for the value of hispeed_freq=0, then it's assigned to policy_max aka scaling_max.
hispeed_freq is kinda like max_load_freq for ondemand.
Btw, input_boost is not available for interactive governor 'designed' for i9100 GS2 with Exynos chip. I don't know about Gnexus' Omap. Since i take one of the GS2 kernel as reference, governors params are kinda specific to i9100 and exynos architecture.
splus said:
Hi nemotheblue. Good post and findings!
I'm just looking at those voltage values you wrote - are you sure you turned off the SR?
...
I'd suggest to have fsync turned on when you fiddle with voltages because that will lessen the possibility of loss of data when phone reboots.
...
Undervolting actually won't help much with battery life, smart reflex does a very good job already. It would help most if you game a lot or use your phone heavily, so then when higher frequencies are used the phone would get less hot and use slightly less power.
...
Click to expand...
Click to collapse
@splus Wow, thanks for joining in on my little thread! Rest assured, before I started my tinkering I turned SR off and fsync on. I've read all 2306 pages of the Franco.kernel thread and avidly followed several conversations within it. I don't mind being a bit adventurous and trying out tweaks and mods; I just prefer to let other, more educated people try it first! I'm a measure twice, cut once kinda guy.
I followed rogersnm's undervolting saga in the Franco thread up to a couple of weeks ago, and recently caught up with his linaro thread, but I was as amazed as you seem to be at the tiny numbers he's currently reporting.
That being said, the voltages I reported were totally stable for me the last 3 days, until tonight. Tonight, I went to a double bill of Batman Begins and The Dark Knight - 5 hours in a huge, sold out cinema with easily 1,000 people. By the second movie, the room temperature was in the high 30s, if not 40C. I got an email, had a read, tapped back to inbox and BAM! The screen froze for about 3 seconds, then rebooted. The crazy thing is, I tried an hour later to reapply the undervolt and it froze straight away. I'm back on SR for a while, but I might try again tomorrow.
My original intention with the undervolting was just to drop the CORE, because I'm getting great performance from the 512GPU, but I notice the area under the camera on the back of the phone can get pretty hot if I'm playing games or watching a video for >30mins. Granted, I don't do that too often, but I figured it'd be nice to eliminate the extra heat. Once I saw the power saving calculations in rogersnm's chart, I was convinced to go the whole hog. The jury's out...
droidphile said:
Since there's lot of info to cover, mistakes can happen. I'll correct it if something is wrong.
Anyhow, if you check the interactive governor code,
if (!hispeed_freq)
hispeed_freq = policy->max;
This means if kernel default for the value of hispeed_freq=0, then it's assigned to policy_max aka scaling_max.
hispeed_freq is kinda like max_load_freq for ondemand.
Btw, input_boost is not available for interactive governor 'designed' for i9100 GS2 with Exynos chip. I don't know about Gnexus' Omap. Since i take one of the GS2 kernel as reference, governors params are kinda specific to i9100 and exynos architecture.
Click to expand...
Click to collapse
@droidphile Thanks for taking the time to reply. I didn't mean to sound like I was attacking your guide; I'd just read conflicting information from multiple other sources and played the numbers. I was labouring under the false assumption that all interactive governors are created equal. Is there some kind of official/original reference/guide/man page for the governors and their parameters, or are you devs left to interpret the code for yourselves?
I must admit, I'm more confused than ever now. I just can't reconcile your explanation with splus' claim that hispeed_freq=1037000 is the sweet spot for getting interactive to use the intermediate freqs up to a max well above 1036MHz???
nemotheblue said:
@splus Wow, thanks for joining in on my little thread! Rest assured, before I started my tinkering I turned SR off and fsync on. I've read all 2306 pages of the Franco.kernel thread and avidly followed several conversations within it. I don't mind being a bit adventurous and trying out tweaks and mods; I just prefer to let other, more educated people try it first! I'm a measure twice, cut once kinda guy.
I followed rogersnm's undervolting saga in the Franco thread up to a couple of weeks ago, and recently caught up with his linaro thread, but I was as amazed as you seem to be at the tiny numbers he's currently reporting.
That being said, the voltages I reported were totally stable for me the last 3 days, until tonight. Tonight, I went to a double bill of Batman Begins and The Dark Knight - 5 hours in a huge, sold out cinema with easily 1,000 people. By the second movie, the room temperature was in the high 30s, if not 40C. I got an email, had a read, tapped back to inbox and BAM! The screen froze for about 3 seconds, then rebooted. The crazy thing is, I tried an hour later to reapply the undervolt and it froze straight away. I'm back on SR for a while, but I might try again tomorrow.
My original intention with the undervolting was just to drop the CORE, because I'm getting great performance from the 512GPU, but I notice the area under the camera on the back of the phone can get pretty hot if I'm playing games or watching a video for >30mins. Granted, I don't do that too often, but I figured it'd be nice to eliminate the extra heat. Once I saw the power saving calculations in rogersnm's chart, I was convinced to go the whole hog. The jury's out...
@droidphile Thanks for taking the time to reply. I didn't mean to sound like I was attacking your guide; I'd just read conflicting information from multiple other sources and played the numbers. I was labouring under the false assumption that all interactive governors are created equal. Is there some kind of official/original reference/guide/man page for the governors and their parameters, or are you devs left to interpret the code for yourselves?
I must admit, I'm more confused than ever now. I just can't reconcile your explanation with splus' claim that hispeed_freq=1037000 is the sweet spot for getting interactive to use the intermediate freqs up to a max well above 1036MHz???
Click to expand...
Click to collapse
Yeah, if you do some gaming and more intensive stuff then it might be worth to find some good voltage values.
Still, those voltages seem pretty far from what hardware would be capable of running so that makes me think the SR check box wasn't really displaying its actual state somehow.
If you were using Franco's app did you check the last tab to see if mV values at certain frequencies were the same as in your table? If yes then I'm just amazed you were able to run it that way...
Anyway, good luck with further undervolting, please post your stable voltages when you find them...
If you have higher OC CPU frequency as max value in interactive (I'm talking about GNex, every chipset behaves differently) then it looks to me that if you set hispeed_freq to 1228000 the CPU would often just stay at that frequency, as if the system decides that it's enough to finish the job. But if you set it to 1037000 then it often determines it is not enough and scales the CPU to higher frequencies, and then you get the CPU to actually use higher frequencies as well.
Other direction would be to set hispeed_freq to even higher frequencies and that'll definitely make it more responsive but at a battery life cost.
The most responsive system would be that CPU goes to max whenever there's something happening. Google actually said at their IO that they tuned JB to go to max frequency at any touch but if you use the stock kernel and check CPU Spy charts you'll see that CPU goes initially only to 700 MHz.
There are other parameters, but it's all about finding a sweet spot for performance and battery life...
Needless to say, tuning all those governor parameters is greatly dependent on available frequencies, programmatically implemented governors and its parameters (which can be changed, a kernel developer can design and implement his own governor and its parameters) and especially chipsets and the way they behave. Every device is very different...
I think we would have better performance if there would be less frequencies in a kernel than currently in Franco's, but if the CPU is really efficient at scaling frequencies up and down through many steps all the time then maybe not.
Either case life goes on and I'm looking forward to see that new Batman myself in couple of days!
Fine folk of XDA,
Apologies for my long absence! I wasn't abandoning the thread; I got a call to work on a short film and had an insane 10 days of 13-16 hour working days and my brain was just too tired in the evenings to keep up with testing and tweaking. Plus, I needed my phone 24/7 stable to handle the continuous flow of calls, texts and emails from the production office.
So, I reverted to SR and dropped my max freq to 1228 and had no problems.
Catching up on the Franco thread tonight, I read a post by daggerxXxsin saying
I am running 600mv on 384-729 and 675mv on 1036-1228. Only works when I'm on 512gpu though. No random reboots or nothin'. Plays games like a champ and never heats up (temp never goes higher than 45°)
Click to expand...
Click to collapse
I'm currently trying these out on 729-1228 with SR off and fsync on, along with the following:
Code:
CORE -
512/384 - 900 mV
307 - 900 mV
153 - 825 mV
I'm gonna leave IVA alone on SR. I never really noticed any difference undervolting it before, and I figure if I'm pushing my MPU voltages so low, I'm just begging for crashes so it's best not to mess with anything that would affect I/O.
I'm currently running r225 512GPU, and I had some wifi issues where the indicator would frequently switch from blue to grey and lose the connection. However, having read some frequent posts in the Franco thread, I've switched from CWM to TWRP, wiped caches and reflashed Franco so I'll wait and see if the problem resurfaces.
BAH! Screw it, I just refreshed the Franco thread and r230 is out. Gonna flash and see how I get on...
Hi again nemo, just stumbled on this thread again
Wondering what posts indicate that CWM vs. TWRP recoveries would make a difference for the booted OS's Wifi/Google Services connectivity?
As I understand it JB in general just has a bit of a Wifi problem vs. ICS and even with ICS the Galaxy Nexus does vs. any other phone. I'm currently having acceptable Wifi using franco 241 (which has a new IO scheduler which makes things feel extremely snappy).
I'm pretty sure all I based that decision on was this discussion in the Franco.kernel thread. In retrospect, kinda half-baked but I must say I'm impressed with this recovery anyway!
I'm still following the thread religiously, rocking M5 at the moment though I'll likely jump on the first 512GPU nightly that comes out. I spent hours yesterday reading the MiNCO and MiNCO+ threads, very carefully backed up, then flashed v4 and immediately ran into this major roadblock and ended up reverting. Further study is required...
A few things come to mind with that storage problem:
1) Maybe that the sdcard bin (as is also in franco's cwm zips) is installed and messing things up weirdly. You'll need to push the stock one back (first post of franco.Kernel thread iirc).
2) A recent ROM Manager bug where .nomedia files were getting placed in the /sdcard/ top level folder, so you might want to investigate that with adb shell (though this would be weird considering you say you're using TWRP and ROM Manager is CWM).
3) Go to Apps > All > MediaStorage, Force Stop and clear data+cache. Reboot to have MediaScanner rebuild the MediaStore.
Edit: Just saw your post in the linked thread... looks like you tried 2+3... so try 1?
osm0sis said:
...1) Maybe that the sdcard bin (as is also in franco's cwm zips) is installed and messing things up weirdly. You'll need to push the stock one back (first post of franco.Kernel thread iirc)...
Click to expand...
Click to collapse
Very clever! Way to think outside the box, ossie :highfive:
I should have time to try again tonight, so I'll let you know how it plays out. While I'm at it, I'm excited to try out DarkJelly's inverted gapps, but I'll make sure to tackle the storage problem before flashing any apps/mods
So I couldn't wait!
I was unable to shake the feeling I might have just had a bad download of MiNCO, so I grabbed a fresh copy before I began. Flashed the ROM, Gallery worked fine. Flashed a navbar/battery icon mod, Gallery still ok. Gapps, no problem. Inverted apps, smooth sailing!
I now have a fully functional, customised ROM and no storage problem whatsoever. I must've just borked the first MiNCO download...
All's well that ends well
And I successfully tricked you into making your 10th post, so my work here is done! :laugh:
Now come join us in the main thread :good:
osm0sis said:
And I successfully tricked you into making your 10th post, so my work here is done! :laugh:
Now come join us in the main thread :good:
Click to expand...
Click to collapse
Nice one! :highfive: