[Q] Galaxy S4 CPU Control (Or lack of) - Verizon Samsung Galaxy S 4

Hello. I have been running CyanogenMod 10.1-10.2 since I got my device back in July, everything has been working great. Bugfixes have been lovely and all that good stuff; however one thing continues to annoy me. I cannot underclock my device properly. Let's say I go into the normal CyanogenMod Performance settings. Then I put my CPU to something like 1024MHz, then I see how the results went over with PerfMon from Chainfire, it will underclock only on Core 0, the rest of the cores still run up to the standard limit, 1890MHz. The only way I can somewhat successfully underclock is by setting my CPU to 594MHz or lower, at which point it will disable all cores except Core 0.
This has been annoying me for a while, I am running the standard CyanogenMod kernel, and recently I tried the Elite Kernel. The only thing the Elite Kernel did was remove the ability to disable the other 3 cores when below 594MHz. (And add the ability to go up to 2.2GHz, but who wants to overclock the Galaxy S4 yet?)
It may be worth mentioning if I try to tweak individual core settings with Tasker, on Core 0 it will let me set a CPU frequency, then if I go in and try to set something on Core 1, it won't have any of the default values for anything, and I enter them manually, then it will give me some errors about not finding the governor I said and stuff like that.
Anyone who knows any way to fix this (Custom kernels, different ROMs (Only for curiosity, I would stick to CyanogenMod anyway), etc) would be greatly appreciated.
Anyone who questions my motives for underclocking, question away. I don't like how my battery life is next to junk when I'm not even touching my phone all day, and the GS4 hardly needs the CPU it has, so I plan to use Tasker to set up a bunch of power saving mechanisms.
I suppose I do have one other question. Will underclocking even benefit me if I can't modify the voltage settings? Are they modified automatically when you're running at lower frequencies? (You would hope so, considering it's kinda a mobile device with a power source that isn't infinite). But if it won't help me without lowering my voltage (and if it isn't modified automatically) is there any good way to do that with a Tasker based setup, so it can be switched instantly whenever I do something? For example, launching a music player. All 4 cores shoot up to 1890MHz (I know they eventually settle down to lower frequencies, but for example's sake), I would rather have it so when I launched the app, Tasker would come in and set my CPU to ~800MHz with only a single core. Everything might slightly lag, but it would work and I would potentially get better battery life while listening to music.
Also, I never tested this on TouchWiz, as I didn't stay on it for more than 30 minutes after I got my device.
I am running the latest CyanogenMod nightly in case it matters (20131002, and it'll be 20131003 tomorrow unless it breaks something)
Thanks in advance to anyone who can possibly help with this. I'm sorry if the post is unorganized, but I hope it's understandable.

[bump]

Forgive me for my ignorance since I'm on ME7 and unable to flash CM10.x yet, but couldn't you just try different governors instead? On my old phone I was using lulzactive and it gave me great battery life, and you could tweak all the values any way you want for more performance or battery life.
I also remember when I experimented with undervolting and much to my dismay it turns out it made my battery life WORSE because of all the error correcting it was doing.
I get at least a days worth of moderate/heavy use on mine and with how fast it charges I don't really care about battery life but I'm curious how much actual gain you'll get for your efforts

Related

[Q] dualcore optimization?

my sgs2 kept getting a little hot and i also felt that the batterylife wasn't bad, but could be better.
so i decided to underclock it to 500mhz and see what happens.
after all, it's a dualcore and 500mhz shouldn't feel like...500mhz right?
but it did feel like 500mhz with everything choppy and so on..
perhaps i just have the wrong concept of how dualcores are supposed to work....or perhaps gingerbread/apps/filesystem isnt yet fully optimized for dualcore? i don't know.
i decided to look for some sort of system monitoring app that'd show individual core usage...like "Tablet cpu usage monitor". but found none
StabilityTest 1.5 sometimes only shows 1 core. probably just the app's problem....
thoughts anyone?
edit: i just realised one thing...though havent tried it enough times to say it's something meaningful. from a fresh reboot, if i don't open SetCPU, StabilityTest v1.5 detects just the 1 core. then if i close Stability Test, open SetCPU, let it have its permission then back out, StabilityTest would then show 2 cores.
I use OS monitor. I found that Wifi Sharing was killing my battery, by takin up 20-30% of CPU time and causing the CPU to clovk itself to 1000 MHz! So using OS monitor, I killed the process and the battery drain goes away (until wifi sharing starts itself up again!)
yer i use osmonitor too but it doesn't display individual cores D:
and yes i probably check my cpu usage about twice a day specifically to make sure wifisharing isnt on and eating up my batt. im surprised samsung didnt fix this with their updates..
im very interested in this too, especially underclock + lower voltage for CPU - could drastically increase battery life.
Try disabling a whole bunch of default apps that come with the phone if you havernt already, details here:
http://forum.xda-developers.com/showthread.php?t=1069924&page=2
And report back your findings ???
plenty of battery threads lets not make another, we know there is a battery problem they say its 2.3.3 related to the dual cores.
As for wifi it might have something to do with your router the dlink dir 655 router was having problems with this phone, i imagine maybe other dlink routers have the same issue.
Get a app called juice defender it shuts of any wifi that is not in use ( when phone is in sleep mode ). it also works with 3g data.
Hope that helped
i suppose im more interested in the dualcore aspects here...rather than the batterylife. sorry i didnt really make it clear
i did search up on "dualcore optimization" here in the forum but there really isnt much about it
for example..what is the state of gingerbread's dualcore optimization? what about apps etc
i think i'll also do some googling myself
I don't think Gingerbread is dual core optimized but the underlying Linux kernel should take advantage of the dual core for multitasking. Every app using multiple threads will use the dual core too.

Noob Question: How do I use SetCPU?

So I'm interested in undervolting using the stock CPU freq's, and I'm going to be using setCPU (obvi).
So, first question: Even if I want to use the stock frequencies, do I have to be using the OC kernel (0.2.1/1.45ghz at the time)? And then adjust the max to 1000mhz?
Second, I started up SetCPU and whenever I go to the voltage tab it forcecloses. This happens with both the stock enhanced & OC kernel, and I've tried fixing permissions to no avail.
All I really understand so far is that the end result is a table of CPU frequencies and linked voltages. I've OCed the hell out of desktops, but I'm lost here.
I'd just like to know how to get from starting up setcpu to ultimately popping out that new voltage/freq table.
I do apologize if this seems kinda stupid, I'm just trying to exercise caution lest I demolish my phone's innards. I've done it with many an intel.
If you just want stock frequencies, then there's no need for a custom kernel. I guess in that case, you could just use SetCPU for undervolting & profiles.
However, if you want overclock, you'll need a custom kernel.
If you're going to be using a overclocked kernel (i.e. the new Faux 1.45 GHz), then you will need to set the max to 1.45 GHz, and make sure SetCPU is set to start on boot; other wise it will stay at the stock clock speed of 1 GHz... So i guess if you only wanted the OC at certain times, you could set the max speed manually, only when you want to, and not select to start on boot.
I haven't really had any success with undervolting yet... always crashes on me & reboots. The best thing to do is make sure "set to boot" is not selected, when testing your undervolting, other wise you could get stuck in a loop, with the phone crashing every time it boots and tries to apply you undervolting values. I'd start at -25 for each and work from there... stress testing each choice with a benchmark app to make sure you wont reboot... if it reboots, then you know your undervolt was to much. Also remember that you can not undervolt more than -100 between each frequency, otherwise the undervolting will not make any difference.
I really like the profile options in SetCPU... you can set the screen off frequencies to the lowest two, that way for whatever reason your phone isn't running at full strength while your not using it. Also, you can set frequency speeds at custom defined battery levels.
Hope this helps somewhat.
It's unclear to me why it force closes. This may be a rom incompatibility or a SuperUser issue? I assume you've tried uninstalling it and reinstalling it? Updating your SU app? Try flashing to the latest Aura rom?
A few quick words about SetCPU:
1. When you first get started, do not set to "Set on Boot" in case you've undervolted too much and it crashes when applied. You can always check it later once you know the voltages are stable.
2. Between each frequency step there is a maximum of 100mV step off. Anything greater than that it defaults to native voltage. I think this is a Tegra2 issue.
With that said, undervolting is simple: simply slide the little slider on SetCPU to negative values. How much you can under-volt largely depends on your particular hardware and it is inconsistent across all Atrix's. My voltage table is as belows:
1000mhz: -50
912: -50
750: -50
608: -75
456: -75
312: -100
216: -100
I, however, did not test the limits of my phone. Many people will slowly increment the voltage lower until they start to get resets, and then they'll move it back to find the lowest stable point.
It has, however, been well established that minor undervolting improves battery life and diminishes heat generation. Excessive undervolting may actually hurt battery life. You can look around on this forum regarding the data. However, reasonable undervolting will improve battery life.
Thanks fellas, this helps A LOT.
I was so afraid I'd get 17 responses of "You're such a noob. Stop cluttering the forums" etc etc
At this point, I think that the problem is, for whatever reason, the FC when I tap the voltages tab.
I'm on the newest Aura (1.2.2.1) newest enhanced stock kernel from Faux123 (0.2.1) and the newest SetCPU (2.4). I'll try updating my SU (though I believe I did that right after I flashed.
I'll reintall SetCPU and report back.
Until then, THANKS BUCKETS fellas. I really appreciate the info and advice.
UPDATE: May have found the problem. When it first boots up it prompts to autodetect freq's or choose them manually (or something like that). I was afraid this would actually alter my CPU clocks right then and there and so I hit manual detect, saw something that said Tegra2 etc and clicked it. I just now hit 'menu' and set it to autodetect, tried the voltages tab, and no FC, so I think that's solved.
Thanks again for all the info guys! I'll start experimenting and let you know HOW LOW I CAN GO (ha).
You guys get force closes due to kernel problems. You have to ask your developments. There might be something wrong with some of your cpu voltage drivers. So yeah that's why just a tip. Only overclock when you're playing some high end game. If not stick to normal. If not your phone might get overheated and damaged
Accidentally sent from my Ultra-speedy SG3 using Tapatalk
AdiNova said:
You guys get force closes due to kernel problems. You have to ask your developments. There might be something wrong with some of your cpu voltage drivers. So yeah that's why just a tip. Only overclock when you're playing some high end game. If not stick to normal. If not your phone might get overheated and damaged
Accidentally sent from my Ultra-speedy SG3 using Tapatalk
Click to expand...
Click to collapse
It's cool bro the problem was totally a user goof by me. I kind of agree with your OC philosophy though, primarily because 1ghz with this proc an RAM seems ample and I don't do much gaming.
Real quick:
When undervolting, should I do it one freq step at a time? Or can I do ALL of them at say -25, stress test, then adjust? Also, what's a good stress test that'll force the proc to hit all the different freqs instead of just the max clock and then the minimum when it's idling/the screen is off?
xyrovice said:
It's cool bro the problem was totally a user goof by me. I kind of agree with your OC philosophy though, primarily because 1ghz with this proc an RAM seems ample and I don't do much gaming.
Real quick:
When undervolting, should I do it one freq step at a time? Or can I do ALL of them at say -25, stress test, then adjust? Also, what's a good stress test that'll force the proc to hit all the different freqs instead of just the max clock and then the minimum when it's idling/the screen is off?
Click to expand...
Click to collapse
Id start at -25 for all. Setcpu has a built in stress test under info, I think. Could also try a benchmark to test it. As general rule if thumb, then lower frequencies can be undervolted more, while the higher ones take some tweaking... I can't even do -25 on my 1000, b/c ill eventually get a reboot, maybe not right away, but eventually. Every device is unique when it comes to undervolting.... just remember to not set the undervolt part to auto on boot, until you get it somewhat stable.
Sent from my MB860 using xda premium
Swiftks said:
Id start at -25 for all. Setcpu has a built in stress test under info, I think. Could also try a benchmark to test it. As general rule if thumb, then lower frequencies can be undervolted more, while the higher ones take some tweaking... I can't even do -25 on my 1000, b/c ill eventually get a reboot, maybe not right away, but eventually. Every device is unique when it comes to undervolting.... just remember to not set the undervolt part to auto on boot, until you get it somewhat stable.
Sent from my MB860 using xda premium
Click to expand...
Click to collapse
Got it. I figure that 'set on boot' checkbox is basically a wedding ring ha. Thanks for the advice and insight my friend.
Also (as I run my first stress test with -25 across the board) if I get reboots early on, should I assume it's the higher voltages and that I should back off on the fast end of the clocks?
xyrovice said:
Got it. I figure that 'set on boot' checkbox is basically a wedding ring ha. Thanks for the advice and insight my friend.
Also (as I run my first stress test with -25 across the board) if I get reboots early on, should I assume it's the higher voltages and that I should back off on the fast end of the clocks?
Click to expand...
Click to collapse
When testing each frequency just set your min/max mHz to the level your testing i.e. min/max=1000. UV and stress test at that frequency and if it's stable, move to min/max=912 and so on.
FYI, my MHz might be different than yours, I'm on the stock enhanced.
ghost_og said:
When testing each frequency just set your min/max mHz to the level your testing i.e. min/max=1000. UV and stress test at that frequency and if it's stable, move to min/max=912 and so on.
FYI, my MHz might be different than yours, I'm on the stock enhanced.
Click to expand...
Click to collapse
That makes perfect sense- limiting the max during the stress test. Thanks for the tip bro I really appreciate it.

[Q] Galaxy Note Overclocking

I'm curious about the state of fine tuned overclocking on the note.
Of course, we have Da G's OC Kernel, and a couple roms.
But i've never been so unlucky when it comes to receiving some free performance via overclocking.
I've been blessed with a solid piece of silicon on my transformer and my desktop setups.
I find that even at 1.72ghz, i FC every 20-25 minutes or so. Just enough to make me want to avoid OCing it.
At 1.78 it's worse, and although i've heard that the majority of users have no issues at 1.83 ghz, i crash hard at that settings--within a quarter-minute of applying it.
I've tried different governors, and had more luck with smartassv2. I have a feeling that i just received a mediocre piece of silicon.
I only have a couple options-- i've had other issues with my note--namely the buttons; soft keys, as well as hard, and display brightness--unfortunately im just past my 30 days to return the note, so i'd have to replace it through Black-Tie Protection....i have no idea how this even works.
The other option is to bump up the voltages, but in SetCPU, there are no options, and CPU Master is the same. The only app I've found that even lists voltage options is System Tuner Pro, and while i'm not fond of the UI, i could deal with it.
Edit:
It turns out, bumping up the voltages @ 1.83ghz to 1375mV seems like it buys me a few seconds more before i crash and burn, but this could be a placebo affect.
So, the pupose of this thread is two-fold:
A: Find out if voltage adjustment is a function of the app, and a logic board component.
B: Find out if voltage adjustment must be supported at the kenel and/or ROM level in order to function, and the settings i'm changing are just dummy settings without said support.
2.
A: Find out how much variation on overclocking yield is standard.
B: Poll and share the results.
it is non sense having a poll for that because although we have the same device, still they are not the same if u know what i mean. stop overclocking if it crashes unless you want your phone to die, or just get it replaced with another one and see if it works fine. 1 question, why you need to oc?
This thread is for discussing overclocking methods, settings, support, and to answer my questions about the above listed specificity.
The poll is meant to survey our (us @ the LTE Galaxy Note forums on XDA) sample (albeit, a small one) to find out where our numbers fall. Unless we have a volunteer to read the thread every day, and report back on how many users are stable @ the clock speeds listed above, a poll is the most efficient, concise, objective, and standardized method to gather such information via forum.
Us non-cyborgs (organic humans) just don't do well when it comes to looking at a ton of numbers and extrapolating 411 from 'em over, and over, and over again.

[Q] Overclocking/tweaking questions

Disclaimer: I realize overclocking and tweaking is very much device specific and what works for one person won't necessarily work for another. That said, I've done a fair amount of reading on the subject but need some clarification on the finer points, along with some opinions on what's working for other people. Most of my questions pertain to the Devil kernel, as most of the settings aren't very well explained. I'm running AOKP M6 with Devil kernel and I've set a modest overclock with 200 minimum and 1200 max, which seems to be pretty smooth and stable. I haven't really felt the need to push it yet
1) What governor do you prefer? From what I read in this thread, SmartassV2 sounds the best and so far it seems to be working okay for me. Also, do the profiles matter (smooth, normal, powersave)?
2) Is it wise to mess with the memory settings in the Devil kernel (zRAM, etc) or should I just leave it alone? What about swap files? Worth the hassle or not?
3) What's the difference between using Live OC and the ROM settings to OC? I've left Live OC alone, and just used the AOKP overclocker to set my values.
4) I know that I've read Deep Idle doesn't work for our phones, but what's the Devil idle setting do?
5) Right now the Screen Off- Min/Max Freq setting is off, but should I set the values for that or does the SmartassV2 governor automatically handle it?
6) Any thoughts on I/O Schedulers? From what I was reading, SIO seems to be the best choice, but then again it seems to be all a matter of opinion.
Thanks for any input you might have on the subject
Alright well I think I'm getting a better handle on this since I've had a few days to mess around, and I'll post some of my thoughts in hopes it might help someone else who's trying to mess with OCing. Problem is that AOKP ICS is already so buttery smooth that overclocking really isn't that noticeable of a gain (at least for me).
As far as clock speeds I've been sticking with 200MHz min 1.2GHz max but might just drop back down to 1.0GHz to save some battery life (I don't really run cpu intense apps that often so I don't really see a huge need). I'm not really going to mess with Live OC now that I understand that it overclocks the bus too... I've screwed around enough with PC overclocking to know that it's going to seriously compromise stability which is a risk I'm not willing to take right now (not to mention it'll probably drain the battery a lot more than 'standard' OCing). I've also found that screen off 400MHz min and 800MHz max works well for me, because although 200MHz min will work too, it lags far too much coming back from standby for my liking.
2 things I still haven't messed with are the RAM settings and devil idle (which I assume doesn't work anyway). As far as the RAM I've never once ran into a low memory issue so I don't really think it's worth the trouble (due to reading this forum post I found).
I changed to SIO for the I/O scheduler but really can't notice any difference from just the default, but I'll keep it set there for good measure I guess.
Well that's it for now, if I notice anything else that might be helpful I'll post again, and if anyone wants to jump in with their experience or settings feel free.
Thanks

[Q] SetCPU Settings

What settings are best for optimal performance and battery life? I don't have any experience with this, and I don't want to screw anything up. I just got tired of my games always lagging, but I don't want a battery drainer. I dont believe I have a custom ROM. Thanks for any and all help.
NLangan said:
What settings are best for optimal performance and battery life? I don't have any experience with this, and I don't want to screw anything up. I just got tired of my games always lagging, but I don't want a battery drainer. I dont believe I have a custom ROM. Thanks for any and all help.
Click to expand...
Click to collapse
SetCPU probably won't work very well unless you flash a custom KERNEL. You can mess around with it if you like and you'll probably won't mess things up. One thing I discovered before custom kernels came out is that you can enable the second core by enabling profiles in setcpu. YOu can see that in the menu option of setcpu for "cpu". That may help you in your games. If you set max at 1500 and min 192 initially, you'll see that next time you start setcpu, the max and min are both at 1500. I used another app like cpu monitor widget to see what was happening and low and behold the cpu was scaling 'properly', so I left the setting in setcpu at 1500 and 1500.
In the end...it doesn't work quite the way it was designed for and even with custom kernels we're seeing some issues with it, but mess with it, you may find that enabling the 2nd core will produce less laggy games. You'll have to judge the affect on battery.
topgun1953 said:
SetCPU probably won't work very well unless you flash a custom KERNEL. You can mess around with it if you like and you'll probably won't mess things up. One thing I discovered before custom kernels came out is that you can enable the second core by enabling profiles in setcpu. YOu can see that in the menu option of setcpu for "cpu". That may help you in your games. If you set max at 1500 and min 192 initially, you'll see that next time you start setcpu, the max and min are both at 1500. I used another app like cpu monitor widget to see what was happening and low and behold the cpu was scaling 'properly', so I left the setting in setcpu at 1500 and 1500.
In the end...it doesn't work quite the way it was designed for and even with custom kernels we're seeing some issues with it, but mess with it, you may find that enabling the 2nd core will produce less laggy games. You'll have to judge the affect on battery.
Click to expand...
Click to collapse
I appreciate the help! [Thanked]

Categories

Resources