I am using cm 6.1 nightly and would like to know how to tune my mobile for long battery life. Wish setcpu could look into my usage and suggest presets for long battery life or performance.
my main is: Min: 245, Max: 710
Screen off: Min: 245, Max: 352
even without the screen off profiles or anything i still get 1-2 days + depending on my usage, and since i like to play with my phone and abuse the wifi/3g it lasts like a day anyway.
With screen on, max 633, min 480. create a profile so when screen is off, max 352 & min 160.
Mine is atm at 10% battery and it's been on for 51h & 30m and in that time it's been awake for 9h & 38m.
When i'm home, wifi is always on.
Gps is only on when needed, and so is bluetooth.
A suggestion for setcpu, it can collect the settings from users and provide the average as an option. This will really help new users. Integration with cm parts will be kickass.
kevin2516 and fusk.
i like yours max and min settings, but what type of scalling u guys use?
ondemand
userspace
performance
interactive (how does it work? couldnt find it on setcpu site)
thanks!
Vecaly said:
kevin2516 and fusk.
i like yours max and min settings, but what type of scalling u guys use?
ondemand
userspace
performance
interactive (how does it work? couldnt find it on setcpu site)
thanks!
Click to expand...
Click to collapse
"couldnt find it on setcpu site"
Oh really? http://www.pokedev.com/setcpu/#7
nemuro said:
"couldnt find it on setcpu site"
Oh really? http://www.pokedev.com/setcpu/#7
Click to expand...
Click to collapse
yeah i saw it before, but i didnt find interactive.
interactive = conservative?
http://forum.cyanogenmod.com/topic/4434-froyo-kernels-by-slayher/
Look for the small text in the signature of the OP.
nemuro said:
http://forum.cyanogenmod.com/topic/4434-froyo-kernels-by-slayher/
Look for the small text in the signature of the OP.
Click to expand...
Click to collapse
thanks.
kept "ondemand".
By having different profiles, we end up changing the CPU frequency limits frequently. Could this harm the CPU? This question was asked elsewhere but am not able to track it (iirc, it was not answered)
I think it will harm CPU. i have been using few profiles for a week. Yesterday it froze for 6 times. . So yeah....
Sent from my HTC Wildfire using XDA App
Vecaly said:
kevin2516 and fusk.
i like yours max and min settings, but what type of scalling u guys use?
ondemand
userspace
performance
interactive (how does it work? couldnt find it on setcpu site)
thanks!
Click to expand...
Click to collapse
I use ondemand and i've set threshold at 90%
works for me.
hackworks said:
By having different profiles, we end up changing the CPU frequency limits frequently. Could this harm the CPU? This question was asked elsewhere but am not able to track it (iirc, it was not answered)
Click to expand...
Click to collapse
No it does not harm the cpu.
think of other cpu's like intel or amd, they also can be throttled either through the hardware or software, to lower power consumption when not used, and visa versa.
I just use the main profile, the phone tends to freeze when switching profiles so i removed all the ones i had.
Running 160-672mhz. Running fine and doesn't freeze anymore.
When i use a profile for screen off, it sometimes takes a second or two to switch cpu speeds. It's kind of annoying as if i don't wait for it to change to the main speed, it may freeze.
Anyone else experiencing this ?
hello everyone
i have a quick question
is it true i shouldn't use setvsel with CM7?because i just read that in the FAQ thread for CM7 here:http://forum.xda-developers.com/showthread.php?t=1065798
and i need setvsel because i use it to undervolting and also i don't to overclock my cpu to 1Ghz since 800mhz can handle all the games i play and im getting 1900-2100 score in quadrant on stock cpu speed
and if i can't use it or shouldn't what program should i use ??since cpu settings in cm settings doesn't include undervolting
(although i've been use it on CM7 rom for 3 days now and i didn't have any trouble)
thanx in advance
appreciate your help guys
Hi there,
CM7 RC0 has the CPU clock speeds & Vsel in the bootmenu where you can overclock, undervolt, change the governor etc.
If you reboot your phone & go into the bootmenu when the blue led comes on then you can access the overclock menu.
There's more info in Quarx's thread in the dev forum
http://forum.xda-developers.com/showthread.php?p=13845272&highlight=smartass#post13845272
sp8y said:
Hi there,
CM7 RC0 has the CPU clock speeds & Vsel in the bootmenu where you can overclock, undervolt, change the governor etc.
If you reboot your phone & go into the bootmenu when the blue led comes on then you can access the overclock menu.
There's more info in Quarx's thread in the dev forum
http://forum.xda-developers.com/showthread.php?p=13845272&highlight=smartass#post13845272
Click to expand...
Click to collapse
ok but setvsel is quicker and easier...so can i use it or i shouldn't?
Evil Slayer said:
ok but setvsel is quicker and easier...so can i use it or i shouldn't?
Click to expand...
Click to collapse
From what I've read in the relevant threads about CM7 many people are saying not use it.
I used it in froyo but since flashing CM7 RC0 I only use the bootmenu for CPU settings.
sp8y said:
From what I've read in the relevant threads about CM7 many people are saying not use it.
I used it in froyo but since flashing CM7 RC0 I only use the bootmenu for CPU settings.
Click to expand...
Click to collapse
ok apart from the three clocks and their vsels and the up_trashhold do i need to change anything?
Evil Slayer said:
ok apart from the three clocks and their vsels and the up_trashhold do i need to change anything?
Click to expand...
Click to collapse
I used the same settings that peetr_ used in the post I've linked to above. It uses the smartass governor.
It appears that there's different settings depending upon which governor is selected:
eg; for the smartass governor then in the overclock settings list the settings that start with _smt are relevant,
interactive governor _int,
ondemand governor _ond, etc.
Think that's how it works
sp8y said:
I used the same settings that peetr_ used in the post I've linked to above. It uses the smartass governor.
It appears that there's different settings depending upon which governor is selected:
eg; for the smartass governor then in the overclock settings list the settings that start with _smt are relevant,
interactive governor _int,
ondemand governor _ond, etc.
Think that's how it works
Click to expand...
Click to collapse
How's Battery Life On Your Settings...And Gaming?
Evil Slayer said:
How's Battery Life On Your Settings...And Gaming?
Click to expand...
Click to collapse
Not sure yet as only changed the settings last night.
Also today I have changed the screen brightness levels so will see how it goes.
Sent from my MotoDefy.
sp8y said:
Not sure yet as only changed the settings last night.
Also today I have changed the screen brightness levels so will see how it goes.
Sent from my MotoDefy.
Click to expand...
Click to collapse
i just applied it too...although i don't need 1GHz
Would You Please Report Back To See If Your Result Match Mine?
Thanx alot for helping btw...i really appreciate it
Evil Slayer said:
i just applied it too...although i don't need 1GHz
Would You Please Report Back To See If Your Result Match Mine?
Thanx alot for helping btw...i really appreciate it
Click to expand...
Click to collapse
No problem pleased I could help
I left the bootmenu cpu frequencies as to what they were but undervolted them slightly.
300/22, 600/34, 1000/54 - I tried many settings using setvsel when running froyo so I know these work fine for me.
As for the other settings I just used those that peetr_ posted for the smartass governor & it seems to run nicely. Haven't had any issues yet
sp8y said:
No problem pleased I could help
I left the bootmenu cpu frequencies as to what they were but undervolted them slightly.
300/22, 600/34, 1000/54 - I tried many settings using setvsel when running froyo so I know these work fine for me.
As for the other settings I just used those that peetr_ posted for the smartass governor & it seems to run nicely. Haven't had any issues yet
Click to expand...
Click to collapse
btw...when i used the values in the post you gave me the phone was running without any issues but if you open setvsel and looked at the cpu it keeps changing from 300 to 1000 even if you are not doing anything but if you used the ondemand scale governor you will notice that if you are not doing anything the value stays 300mhz so im not sure that smartass is a good governor after all...or maybe its just me
anyways i think i will keep the settings like this:
[email protected]
[email protected]
[email protected]
also change the other values in menu like this(i think you must change them according to the values you gave your cpu in the 3 vsels):
smt_min:30
smt_max:80(although i suspect this one should be 100 but since the user in the thread you gave kept it 80 im keeping it 80 )
smt_awake:300000
smt_sleep_max:300000
smt_up_min:1000000
smt__wakeup:1000000
smt_ramp:300000
ond_up_threshold:75
what do you think of these values ?
and also...can you tell my your temp in normal state and in after heavy use ?i think mine stays hot
oh and btw could you provide me with a link for the youtube apk you are using i can't seem to find a one that works
Evil Slayer said:
btw...when i used the values in the post you gave me the phone was running without any issues but if you open setvsel and looked at the cpu it keeps changing from 300 to 1000 even if you are not doing anything but if you used the ondemand scale governor you will notice that if you are not doing anything the value stays 300mhz so im not sure that smartass is a good governor after all...or maybe its just me
anyways i think i will keep the settings like this:
[email protected]
[email protected]
[email protected]
also change the other values in menu like this(i think you must change them according to the values you gave your cpu in the 3 vsels):
smt_min:30
smt_max:80(although i suspect this one should be 100 but since the user in the thread you gave kept it 80 im keeping it 80 )
smt_awake:300000
smt_sleep_max:300000
smt_up_min:1000000
smt__wakeup:1000000
smt_ramp:300000
ond_up_threshold:75
what do you think of these values ?
and also...can you tell my your temp in normal state and in after heavy use ?i think mine stays hot
Click to expand...
Click to collapse
My cpu sometimes jumped from 300-1000 when I used setvsel on froyo.
Temperature wise it seems to be running similar if not slightly cooler than when on froyo. Now the hottest I have seen battery temp is 35C but it is mostly much cooler than that.
Sent from my MotoDefy.
Evil Slayer said:
oh and btw could you provide me with a link for the youtube apk you are using i can't seem to find a one that works
Click to expand...
Click to collapse
I just have the current market youtube app. Not sure if it was included in the gapps package?
Sent from my MotoDefy.
sp8y said:
My cpu sometimes jumped from 300-1000 when I used setvsel on froyo.
Temperature wise it seems to be running similar if not slightly cooler than when on froyo. Now the hottest I have seen battery temp is 35C but it is mostly much cooler than that.
Sent from my MotoDefy.
Click to expand...
Click to collapse
hmm..mine reached 39c on very heavy use...normaly its around 30c
and about the youtube app..no it wasn't included and i downloaded the app in the market but it crashes on most videos
btw im getting 2000-2500 in quadrant...how come?i think that is too good to be true
Here's what i've come up with, using google (lets correct them, if some are wrong) :
con_up_threshold: [80] # system load in % above which increases the CPU frequency?
con_down_threshold: [20] # system load in % above which drops the CPU frequency?
con_freq_step: [5] # frequency step?
con_sampling_rate: [160000] # interval (in milliseconds) between polls of the system. In fact, the intervals between changes of CPU frequency? Times in 160 seconds?
int_min_sampling_rate: [50000] # minimal interval (in milliseconds) between polls of the system. In fact, the intervals between changes of CPU frequency? Every 50 seconds?
ond_up_threshold: [86] # CPU in % above which increases the frequency of the processor.
ond_sampling_rate: [50000] # second? interval (in milliseconds) between polls of the system. In fact, the intervals between changes of CPU frequency? Every 50 seconds?
smt_min_cpu_load: [40] # CPU usage in % in achieving a reduced frequency of the processor
smt_max_cpu_load: [85] # CPU in % above which increases the CPU frequency
smt_awake_min_freq: [30000] # The minimum frequency of waking up?
smt_sleep_max_freq: [30000] # CPU frequency during sleep?
smt_up_min_freq: [1200000] # The minimal jump. so default made the cpu jump every time to max speed
smt_wakeup_freq: [1200000] # The frequency of waking up. It is important to not lose calls.
smt_ramp_up_step: [250000] # How much to increase the frequency at one time?
Click to expand...
Click to collapse
So witch is the best governor and settings for normal daily usage like some texts, calls, 3g/wifi, maybe some games ?
I'm on smartass right now with these settings
Vsel1 - 20
2 - 31
3 - 54
smt_min... - 30
smt_max... - 80
smt_awake_min... - 300000
smt_sleep_max... - 300000
smt_up_min... - 1000000
smt_wake_up_... - 1000000
smt_ramp_up_step - 400000
Click to expand...
Click to collapse
SpawNyK said:
Here's what i've come up with, using google (lets correct them, if some are wrong) :
So witch is the best governor and settings for normal daily usage like some texts, calls, 3g/wifi, maybe some games ?
I'm on smartass right now with these settings
Click to expand...
Click to collapse
i don't know...really..i can't seem to relate what are the values for with the available governors
my only problem with smartass governor that even if im not using the cpu the values keep changing between 300mhz-1000ghz but when im using on demand if im not doing anything with the phone the cpu stays at 300mhz but when i start using the phone(moving the screen up and down for example)the values changes to 1000ghz and when i stop the values goes back to 300mhz that's why im using on demand...but again it might be just my cpu
looks like it requires to dig more in the differences between each governor
anyway i read in the latest post in CM7 DEV thread that some people is actually using setvsel so i opened my boot menu,and went to overclock,selected set default,reboted,and installed setvsel and applied these values:
20/300
33/600
47/800
up_therhold:75
oh and btw...how's your battery life ?
Dudes, so please, quick answer:
Use SetVsel - no
use build in "overclock" settings in CM7 RC0 - yes?
Any one using CM7 RC0 bootmenu> Overclocking?
There are more values than in peters thread.
Please advise with all info/numbers according to present in overclocking bootmenu 0.8.6 values.
m_zet said:
Dudes, so please, quick answer:
Use SetVsel - no
use build in "overclock" settings in CM7 RC0 - yes?
Any one using CM7 RC0 bootmenu> Overclocking?
There are more values than in peters thread.
Please advise with all info/numbers according to present in overclocking bootmenu 0.8.6 values.
Click to expand...
Click to collapse
Yes I've got CM7 RC0 & using the bootmenu overclock.
There's many values in the menu as it depends upon which governor you have set it to so only those values relevant to that governor will be used.
For instance on Smartass governor - the values starting with _smt will apply
Custom kernel for Samsung Galaxy S Advance
Code:
/*
* Your (probably expired) warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Hi there!
Because of numerous issues found in 3.4.113 kernel, I'm temporarily moving to development on 3.0.101 base.
What is difference between chrono kernel (CK) and CK refresh build? CK was mostly tested on MM-based ROMs, but appeared not to work stably on Android 4.4.x. Aim of this build is to properly enable support for older ROMs (like kitkat), and when done, merge these changes to 3.4.113 kernel.
This build is based upon chrono kernel r4.1 build, so to avoid versions confusion, I'm creating a separate topic.
Features:
CPU, GPU and DDR OC support
more governors and I/O schedulers
Lite kernel - some kernel features moved as modules
F2FS support
ABB-charger tweaks
many others features and tweaks...
Credits:
@dh.harald and @hafidzduddin for contribution on U8500 platform sources
@ Team Canjica for a base for this kernel
@ Nova Fusion for F2FS implementation
@zwliew for contribution on TC kernel
@cocafe for LiveOPP, GPU OC, abbamp and abb-charger tweaks and many cool patches which I've used from his kernel
@faux123 for dynamic Fsync implementation
@Christopher83 for dynamic management of dirty page writebacks implementation
@KINGbabasula for contribution on TC kernel sources
@boype for SIOPlus tweaks and OndemandPlus governor
@Adi_Pat for abbamp, kernel tweaks
@PolishVodka for initramfs scripts for 4.2.x and 5.0.x
@Rox for help in fixing initramfs scripts for 4.1.2
@ace2nutzer for optimization CPU OC and for whatever scripts which I have used in my kernel
@Meticulus for BLN, Sweep2wake and Doubletap2wake
@mkaluza for huge LiveOPP/Mali improvements and Dynamic governor
@yanpol199 for help with F2FS support in TWRP
@ all users who tests this kernel and directs the development along the right path
@ all those users, who I forgot to mention (PM me if so)
Team Win for TWRP recovery
Samsung for opening kernel source
Linus Torvalds for Linux sources
Special Thanks:
@isaak, @enkflr, @Pdevo, @prometej-zg for donating this phone!
[*]@S.AMU for providing FTP-Server
Source Code:
LK 3.0.y based releases
Installation:
Flash temporary kernel (if coming from other recoveries than TWRP 3.1.1)
Reboot recovery
Flash kernel zip
Notice: this kernel is not compatible with NovathorSettings app, be sure to remove it before installing a kernel!
Download:
FTP
XDA:DevDB Information
Chrono Kernel Refresh, Kernel for the Samsung Galaxy S Advance I9070
Contributors
ChronoMonochrome, cocafe, faux123, zwliew, mkaluza, Meticulus, KINGbabasula, ace2nutzer, TeamCanjica
Source Code: https://github.com/ChronoMonochrome/Chrono_Kernel-1/commits/refresh-3.0.101
Kernel Special Features:
Version Information
Status: Testing
Stable Release Date: 1974-11-11
Beta Release Date: 1974-11-11
Created 2018-03-22
Last Updated 2018-03-23
Changelogs
Changelog
R4.6.2
rebased to CM14.1 branch (added support for 6.0.1 and 7.1.2 ROMs)
R4.6.1
fixed CPU OC instabilities
LCDCLK is adjusted to fix tearing issues *
adjusted Dynamic CPU governor tunables for a better battery live
adjusted PowerHAL profiles **
genfstab: storages swap is disabled by default (remove /ramdisk/fstab_specs.txt before flashing to take this change in an effect)
updated temporary kernel zip
* tested with apps like Impossible Game, a display tearings are mostly resolved here. Apps like Youtube, though, might still causing tearings when playing video.
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage, so unless you're undervolting the CPU, there won't be any significant difference in a battery drain.
R4.6
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.
R4.1
Initial build for janice (kernel sources based on Chrono Kernel r4.1)
LiveOPP: updated to r5.7.1 kernel version
Exfat: test fixes for Stock 4.1.2 ROM (not tested)
Enabled CONFIG_STE_TRACE_MODEM (test fix for Stock ROM incoming / outgoing calls)
Kexec: added janice support
Misc
Storages switch
By default, this kernel comes with internal and external storages switched. You can revert this behavior, by changing the line
Code:
use_swap=1
to
Code:
use_swap=0
in file /ramdisk/fstab_specs.txt and flashing the kernel package. This setting will remain until you format /ramdisk partition.
Thank you Chrono again.
So far I am still having issues with calls on 4.1.2 stock, I took another logcat in case would help you, and seems like phone can't enter deepsleep mode, but I will investigate further this issue with some days of usage.
I couldn't get exfat working, I took the exfat-fuse binary from /sbin in TWRP, then ran "exfat-fuse /dev/block/mmcblk1p1 /storage/extSdCard", tryed also with "mount.exfat-fuse etc etc", the fact is the card is correctly mounted and usable from recovery, but this does not matter after all.
The nice thing is I find multitasking working far better, phone seems to be more responsive in situations where more apps are running at the same time, this is very good to me!.
Another big point is installation went fine and recovery is working perfectly, so problems with possible bootloops are solved (and after some more usage I will go further to your more updated roms )
If there is something more to provide you, test or informations missing, please ask me Chrono
I tested chrono kernel r4.1 on Lineage OS 11.
-Compared to the previous chrono_kernel_r5.7.1, this is considerably slow, especially during the opening of apps like Settings, Contacts, Google News, Play store.
-If I set 1000 Mhz as maximum clock of the dynamic governor, the phone becomes slower and a bit hot on the back.
Multitasking is severely affected by that clock. Multitasking is more stable at 800 Mhz, despite it's still slow.
-If I reboot the phone, the maximum clock of 1000 Mhz is automatically resetted at 800 Mhz.
-If I attempt to reboot the phone in recovery mode from Lineage Os 11 ROM with the PC USB charging cable on, phone will shutdown instead. Disconnecting the charging cable before rebooting the phone in recovery mode is the only workaround. It doesn't happen with the Epirex Kernel, so I think it's related to your kernel.
In my attachment there is a meminfo that I took while the phone was under load.
If it isn't enough, I attached a full logcat. There are some errors and crashes.
@Pdevo, @isaak, thanks for testing!
I tested chrono kernel r4.1 on Lineage OS 11.
-Compared to the previous chrono_kernel_r5.7.1, this is considerably slow, especially during the opening of apps like Settings, Contacts, Google News, Play store.
Click to expand...
Click to collapse
Probably I've rushed things, or sort of. I had a hard time trying to find a considerably stable kernel 3.0.101 base (this one appeared to work stably, though not best, in terms of the performance). Nevertheless, the multitasking should already be better (at least better than in r5.7.1, as in this one LowMemoryKiller appeared not to work at all). I'm updating the sources to a new kernel base, r4.6 which should be even better in multitasking term.
-If I reboot the phone, the maximum clock of 1000 Mhz is automatically resetted at 800 Mhz.
Click to expand...
Click to collapse
Should be fixed in upcoming release.
-If I attempt to reboot the phone in recovery mode from Lineage Os 11 ROM with the PC USB charging cable on, phone will shutdown instead. Disconnecting the charging cable before rebooting the phone in recovery mode is the only workaround. It doesn't happen with the Epirex Kernel, so I think it's related to your kernel.
Click to expand...
Click to collapse
It's a bug in CM11 ramdisk, I've took another one from Codina, and now this issue should be resolved as well.
Pdevo said:
So far I am still having issues with calls on 4.1.2 stock, I took another logcat in case would help you, and seems like phone can't enter deepsleep mode, but I will investigate further this issue with some days of usage.
I couldn't get exfat working, I took the exfat-fuse binary from /sbin in TWRP, then ran "exfat-fuse /dev/block/mmcblk1p1 /storage/extSdCard", tryed also with "mount.exfat-fuse etc etc", the fact is the card is correctly mounted and usable from recovery, but this does not matter after all.
Click to expand...
Click to collapse
I'm afraid that exfat driver built in the kernel is not compatible with this userspace mount.exfat-fuse utility. I won't be able to fix it, until I find a time to return to stock & rebuild either mount.exfat-fuse or kernel driver in order to make them compatible each with other.
As for the deepsleep issue, I can say that at least 4.4.4 is not affected by this bug. Try making sure that no apps are preventing deep sleep (Better battery stats or Wakelock detector can help in that).
New build r4.6 is up!
Changelog
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.
ChronoMonochrome said:
Changelog
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.
Click to expand...
Click to collapse
Tested on Lineage Os 11 without CCleaner.
After flashing this new kernel I had to force a Media scan with Fx File Explorer (that detected over 300 changed files) because the phone was really slow. That was sufficient to speed up the multitasking that now it's much better than previous 4.1 build.
Additional observations:
- Do you think it's possible to improve Media scanner reactivity via kernel?
- Fx File Explorer detects my external sd card as Main storage and Media card as internal storage. This doesn't happen on Epirex kernel.
- Battery usage is higher than previous kernel. If I stay on a webpage in idle, after 30 seconds my battery decreases of one percentage point (i.e. from 70% to 69%). I noticed that a simple swipe on the screen jumps the current clock directly to the maximum frequency, this could be one of the reasons.
- There is only FIOPS as I/O Scheduler and I miss all the other schedulers.
I think you're on the right track!
isaak said:
- Do you think it's possible to improve Media scanner reactivity via kernel?
Click to expand...
Click to collapse
I don't think it's possible. The only possible way is to overclock CPU, though it won't help much.
- Fx File Explorer detects my external sd card as Main storage and Media card as internal storage. This doesn't happen on Epirex kernel.
Click to expand...
Click to collapse
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
- Battery usage is higher than previous kernel. If I stay on a webpage in idle, after 30 seconds my battery decreases of one percentage point (i.e. from 70% to 69%). I noticed that a simple swipe on the screen jumps the current clock directly to the maximum frequency, this could be one of the reasons.
Click to expand...
Click to collapse
Ok, I'll consider of tuning CPU governor in order to provide more battery friendly setup. I was afraid that the battery usage might be too high, but that was a necessary evil, I guess. In the meantime, as a temporary workaround, the maximum CPU frequency can even be lowered to 800 MHz, it should be still fast enough.
- There is only FIOPS as I/O Scheduler and I miss all the other schedulers.
I think you're on the right track!
Click to expand...
Click to collapse
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?
ChronoMonochrome said:
I don't think it's possible. The only possible way is to overclock CPU, though it won't help much.
Click to expand...
Click to collapse
Nevermind.
ChronoMonochrome said:
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
Click to expand...
Click to collapse
I'd like to revert the behavior, so I would appreciate If you could provide the same instructions here and in the other kernel thread..
ChronoMonochrome said:
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?
Click to expand...
Click to collapse
I would suggest deadline, noop, sioplus, zen (plus the existent FIOPS).
ChronoMonochrome said:
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?
Click to expand...
Click to collapse
Personally I really appreciate and find useful the external sdcard storage as primary one, should be the default behaviour for me, it makes sense and also I never liked to have some files on one unit and some files on another one (download, pictures, recordings on extsdcard, apps folders, screens, other apps downloads etc on internal), I really like the idea of sdcard as main, like the old times of galaxy mini
Fiops to me is a fair good scheduler, maybe also noop would be useful, but I guess having as much things as modules as possible can help load only the strictly necessary, but I say this without dev knowledge.
I will test this build and especially the deepsleep issues, to see if there are apps causing phone not to sleep, the problem is I didn't add any app, just using the same enviroment that with cocore was going to deepsleep. I will report soon, anyway, good job chrono, keep it up
Pdevo said:
Fiops to me is a fair good scheduler, maybe also noop would be useful, but I guess having as much things as modules as possible can help load only the strictly necessary, but I say this without dev knowledge.
Click to expand...
Click to collapse
Yes, FIOPS is good. I just think that having 2 or 3 additional schedulers to select would be better for different uses.
In my previous post I replaced sioplus with zen, according to the conclusions of this guide. There is an useful (up to date) list of recommended IO schedulers, ordered for everyday usage, battery life, heavy multitasking, etc.
New build r4.6.1 is up!
Hey guys and sorry for having to wait that long for a new releases!
I'm still working on 3.4.x kernel - no great news here, but at least I've found a more less stable sources base, so the only what needed now, is a time to bring up some stability fixes and feature changes.
For now releasing a 3.0.101 kernel with some minor changes:
R4.6.1
fixed CPU OC instabilities
LCDCLK is adjusted to fix tearing issues *
adjusted Dynamic CPU governor tunables for a better battery live
adjusted PowerHAL profiles **
genfstab: storages swap is disabled by default (remove /ramdisk/fstab_specs.txt before flashing to take this change in an effect)
updated temporary kernel zip
* tested with apps like Impossible Game, a display tearings are mostly resolved here. Apps like Youtube, though, might still causing tearings when playing video.
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage, so unless you're undervolting the CPU, there won't be any significant difference in a battery drain.
ChronoMonochrome said:
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage
Click to expand...
Click to collapse
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs:
1) Minimum CPU freq here is still set at 200 MHz after I flashed chrono kernel 4.6.1.. but this time I forgot to flash the temporary kernel before your kernel.
Anyway chrono kernel 4.6.1 was flashed without issue using TWRP 2.8.7.0.
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
5) On the Performance UI, performance profile results automatically set on Balanced after any reboot, even if I set Power save as default (it may be reproducible with "Performance" option too, I didn't check).
UPDATE: I've reinstalled chrono kernel again and these behaviors still happen.
For me the minimum freq was correctly 400 mhz as expected, as always running on stock 4.1.2.
After two days of use I can say you are following the right path.
This time I wanted to remove every possible source of doubts and I went for a clean installation, so doing a complete reset and flashing your kernel, of course after the temporary one. I still have the phone not going to deepsleep and the call issues (basically it is impossible to do and receive phone calls on stock rom).
A part from these I can say I didn't noticed any other issue at all, finding memory management a little improved compared to previous release and battery life still good, considering the phone isn't going to sleep mode.
I think this will continue to improve and soon all these glitches will just be gone away, thank you so much chrono also hoping to settle for a bit on your ultimateROM, only waiting for the vibration working, because that is basically the only notification for me
isaak said:
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs:
1) Minimum CPU freq here is still set at 200 MHz after I flashed chrono kernel 4.6.1.. but this time I forgot to flash the temporary kernel before your kernel.
Anyway chrono kernel 4.6.1 was flashed without issue using TWRP 2.8.7.0.
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
5) On the Performance UI, performance profile results automatically set on Balanced after any reboot, even if I set Power save as default (it may be reproducible with "Performance" option too, I didn't check).
UPDATE: I've reinstalled chrono kernel again and these behaviors still happen.
Click to expand...
Click to collapse
1) Isn't an issue here, the showed CPU frequency is 200 MHz, but the actual CPU pll clock set at 400 MHz. Might be confusing, but yet that is better for a battery life.
2) These aren't really bugs, it's how LOS 11.0 performance profiles works. To change min / max CPU freq, you either need to edit /ramdisk/perf.profiles.rc (and set a custom values) or disable perf profiles. Actually there is one more way - to remove CPUfreq adjusting lines completely from that script - would anyone like this change introduced in a new release?
3-4) I've checked it right now - no issues for me... Have you set "apply on boot" checkbox?
5) It's a known bug of CM11 perf profiles. AFAIK, @ace2nutzer fixed this bug in his CM11 builds. @ace2nutzer, can you please remind how this could be worked around?
ChronoMonochrome said:
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
Click to expand...
Click to collapse
2) These aren't really bugs, it's how LOS 11.0 performance profiles works. To change min / max CPU freq, you either need to edit /ramdisk/perf.profiles.rc (and set a custom values) or disable perf profiles. Actually there is one more way - to remove CPUfreq adjusting lines completely from that script - would anyone like this change introduced in a new release?
Click to expand...
Click to collapse
Honestly I don't know how to disable perf profiles. If it's a simple thing to do (like a command or two to execute), please tell me how to do it because it's enough for me, otherwise I'd like to try the third way and see.
ChronoMonochrome said:
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
Click to expand...
Click to collapse
3-4) I've checked it right now - no issues for me... Have you set "apply on boot" checkbox?
Click to expand...
Click to collapse
Yes, "Set on boot" options are correctly set for both Processor and I/O Scheduler.
And I keep "Enable per-app profiles" option turned off.
@ChronoMonochrome
UPDATE 1: It occurs only randomly and with particular combinations. The best way to reproduce is to set these, one at a time:
1) Zenx as governor, min. 200 max 800, Noops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Fiops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Sioplus scheduler. Reboot.
After the first, the second or the third reboot, some of these values you've set will change spontaneously on their own.
UPDATE 2: I've got a screen flicker issue while I was browsing in Naked Browser with the new LCDCLK frequency.
Tried to set echo 1 > /sys/kernel/mcde/lcdclk, it's ok now, but I've noticed that this value is not kept after a reboot.
Do you need a specific log?
In case please write me any command and I'll give you the output.
isaak said:
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs: .....
Click to expand...
Click to collapse
I suggest to keep it unchecked, otherwise it'll change the profile randomly, and that's probably not what u want.
ChronoMonochrome said:
....
5) It's a known bug of CM11 perf profiles. AFAIK, @ace2nutzer fixed this bug in his CM11 builds. @ace2nutzer, can you please remind how this could be worked around?
Click to expand...
Click to collapse
There's still no fix ! But what i did is to add the perf. profile in my control app ... that works fully independently.
But that's probably not what u guys want.
My last try was to do that over build.prop .. this works only for around 15 seconds (after wiping dalvik cache it's around 30 sec.) and then it sets back to "balanced" .. so i use it anyway just for speeding up the boot sequence:
Code:
# CM Performance Profiles (only during boot)
# 0= powersave; 1= balanced; 2= performance - default
sys.perf.profile=2
IMO the best way is to add the perf. profiles button to the quick settings, then it's very easy to switch between the 3 profiles.
Using the same profile for everything is for sure not the best option if u want performance + powersave at the same time.
Personally i use performance, and when i read an pdf or watch a YouTube Video then i switch to powersave.
Using powersave or even balanced for normal usage isn't recommended as it can drain even more battery than using performance, because it's slower and the CPU will stay too long on max. freq and the LCD also will stay longer ON, which leads both to increase power consumption.
So the faster the cpu is, the quicker it'll go on idle (min cpu 200) which is powersaving freq and the faster u'll turn OFF the screen, and logical bigger time on suspend --> deep sleep :highfive:
ace2nutzer said:
I suggest to keep it unchecked, otherwise it'll change the profile randomly, and that's probably not what u want.
There's still no fix ! But what i did is to add the perf. profile in my control app ... that works fully independently.
But that's probably not what u guys want.
My last try was to do that over build.prop .. this works only for around 15 seconds (after wiping dalvik cache it's around 30 sec.) and then it sets back to "balanced" .. so i use it anyway just for speeding up the boot sequence:
Code:
# CM Performance Profiles (only during boot)
# 0= powersave; 1= balanced; 2= performance - default
sys.perf.profile=2
IMO the best way is to add the perf. profiles button to the quick settings, then it's very easy to switch between the 3 profiles.
Using the same profile for everything is for sure not the best option if u want performance + powersave at the same time.
Personally i use performance, and when i read an pdf or watch a YouTube Video then i switch to powersave.
Using powersave or even balanced for normal usage isn't recommended as it can drain even more battery than using performance, because it's slower and the CPU will stay too long on max. freq and the LCD also will stay longer ON, which leads both to increase power consumption.
So the faster the cpu is, the quicker it'll go on idle (min cpu 200) which is powersaving freq and the faster u'll turn OFF the screen, and logical bigger time on suspend --> deep sleep :highfive:
Click to expand...
Click to collapse
Sorry for so late response, I had to take a break in a development because suddenly got sick with a flu (I'm fine now, btw) :silly:
I think I've found a temporary solution to this bug, take a look if you're interested:
https://github.com/ChronoMonochrome...mmit/bd0dcce403633543f1bf11e5f8b476a3e88322cb
New build is up!
Changelog
R4.6.2
rebased to CM14.1 branch (added support for 6.0.1 and 7.1.2 ROMs) *
Hey there! I've been testing 6.0.1 / 7.1.2 ROMs and I've recently got some issues with camera on 3.4.x kernel build, so I've decided to release a new refresh build (based on 3.0.101 sources).
I've rebased the most of recent changes to CM14.1 branch in order to support these ROMs (so if you're using older ROMs like stock 4.1.2 then better to use previous release cause some patches might be missing here).