Help to sort out acronyms in the WIKI - Android Software Development

Hi
I have been looking for information on some of the terms used in Kernel descriptions, but I'm struggling to find any real answers.
I have added a Kernel section to the FAQ section on the WIKI, and I have started to add in a few terms as I understand them.
Could one of the knowledgeable Kernel guys add in their understandings of what the acronyms stand for please or post below and I will add them?
http://forum.xda-developers.com/wiki/index.php?title=FAQ
Kernel
CFS: Completely Fair Scheduler - The original process scheduler. CFS is better for multitasking, BFS is better for user interactions
BFS: Brain F**k Scheduler - The updated and improved process scheduler. CFS is better for multitasking, BFS is better for user interactions
SVS: Static Voltage Scaling will change the voltage based on a set table created by the kernel maker. Example: At a certain speed, say 245MHz, 925mV is feed into the CPU. At 998MHz, 1225mV is used.
AVS: Adaptive Voltage Scaling will change the voltage depending on temperature and CPU needs.
HAVS: Under volts and under clocks the processor when it's not being used.
BFQ: I/O scheduler - Schedules read and write operations to the SD? or Processor?
AXI: AXI (internal bus). Reduces speed when the apps CPU is running at lower clock speeds and increases it when at higher clock speeds.
UVOC: Undervolted Overclocked. Reduce the voltage supply to the processor for power saving at lower speeds, along with overclocking the processor at the save voltage as the previous max value. 1250mV @ 998MHz - 1250mV at 1190MHz, -or- 245MHz @ 1000mV - 245MHz @ 900mV.
SLAB: Slab allocation is a memory management mechanism intended for more efficient memory allocation and to eliminate memory fragmentation
SLUB: SLUB allocator, a drop-in replacement for the slab code. SLUB promises better performance and scalability by dropping most of the queues and related overhead and simplifying the slab structure in general.
SLQB: A slab allocator that focuses on per-CPU scaling, and good performance with order-0 allocations.
EXT2: The ext2 or second extended filesystem is a file system for the Linux kernel.
EXT3: The ext3 or third extended filesystem is a journaled file system that is commonly used by the Linux kernel.
EXT4: The ext4 or fourth extended filesystem is a journaling file system for Linux. Should offer improved performance over ext2/3.
CIFS: Common Internet File System (CIFS) operates as an application-layer network protocol, mainly used to provide shared access to files across a network.
TUN:
AUFS: AUFS is a complete rewriting of the earlier UnionFS file system. It aimed to improve reliability and performance.
ReiserFS: ReiserFS is a general-purpose, journaled computer file system. Performance is good, but performance can degrade with constant use.
Thanks
Danny

Bump
Sent from my HTC Desire using XDA App

Related

(info guide) --- i/o scheduler ---

The Scheduler is an algorithm that, given a set of requests for access to a resource, establishing a temporal order for the execution of such requests, favoring those that meet certain criteria in order to optimize access to that resource.
The difference between the various scheduler is the focus on certain criteria rather than on others.
The choice of a given scheduler does not produce visible changes so as to the choice of the governor, but still provides some improvements.
As usual schedulers are personally tested to find one that best suits your needs.
DEADLINE
It aims to provide a deadline, a deadline for all requests in order to avoid undesirable phenomena such as the "starvation" or the eternal waiting for some requests that occurs when one or more background processes are left indefinitely in the queue the ready, because there is always at least one of the highest priority ready process.
VR
The next request is performed according to the distance from the last request. In the network running good opinions about this scheduler.
NOOP
Push all requests in a single queue simply by their arrival order, grouping together those contiguous.
SIO
E 'the scheduler simpler, does not make any type of sort, is intended only for the purpose of obtaining a low-latency, ie to reduce the amount of time that elapses between the instant at which the request is generated and that in which the request is satisfied.
CFQ
Order requests of different processes in queues for each queue type and assigns a specific interval of time whose duration depends on the priorities assigned to processes. Can be considered the Ondemand the scheduler, the scheduler is in fact more balanced, doing its job in an honest manner.
BFQ
It 's based on CFQ but, instead of the intervals of time, assigns a part of the bandwidth of the disc to each process running in a proportional manner.
Anticipatory
Order requests based on criteria predictive, that puts the demands paused for a short period of time in anticipation that more of this to come to aggregate them.
ADAPTIVE ANTICIPATORY SCHEDULER
For the anticipatory scheduler, we scale up the anticipation timeout (antic expire) using the latency scaling factor over time. When the virtual disk latencies are low a small scaling of the timeout is sucient to prevent deceptive idleness, whereas when the latencies are high a larger scaling of the timeout value may be required to achieve the same. Note that such dynamic setting of the timeout value ensures that we attain a good trade-o between throughput (lost due to idling) and deceptive idleness mitigation. Setting a high value for the scaling factor (increasing idling time) only happens when the disk service latencies themselves are higher. This may not necessarily cause a signicant loss in throughput, because submitting a request from another process instead of idling is not going to improve throughput if the virtual disk itself does not get any faster than it is at the current period. A higher anticipation timeout might also be capable of absorbing process scheduling eects inside the VM. The results for the adaptive anticipatory scheduler are shown in Figure 2. The read time with our modied implementation (third bar in the dierent scheduler combinations) shows that it is possible to mitigate the eects of deceptive idleness by adapting the timeout. An interesting related observation is that the level to which the improve- ment is possible varies for dierent Domain-0 schedulers; noop - 39%, anticipatory - 67% and cfq - 36%. This again points to the fact that the I/O scheduler used in Domain-0 is important for the VM's ability in enforcing I/O scheduling guarantees. Dierent Domain-0 I/O schedulers likely have a dierent service latency footprint inside the VMs, contributing to dierent levels of improvement.
FIOS
Flash-based solid-state drives (SSDs) have the potential to eliminate the I/O bottlenecks in data-intensive applications However the large performance discrepancy between Flash reads and writes introduces challenges for fair resource usage. Further, existing fair queuing and quanta-based I/O schedulers poorly manage the I/O anticipation for Flash I/O fairness and efficiency. Some also suppress the I/O parallelism which causes substantial performance degradation on Flash. This paper develops FIOS, a new Flash I/O scheduler that attains fairness and high efficiency at the same time. FIOS employs a fair I/O time-slice management with mechanisms for read preference, parallelism, and fairness-oriented I/O anticipation. Evaluation demonstrates that FIOS achieves substantially better fairness and efficiency compared to the Linux CFQ scheduler, the SFQ(D) fair queuing scheduler, and the Argon quanta-based scheduler on several Flash-based storage devices (including a CompactFlash card in a low-power wimpy node). In particular, FIOS reduces the worst-case slowdown bya factor of 2.3 or more when the read-only SPECweb workload runs together with the write-intensive TPC
ROW
Row stands for READ Over WRITE which is the main requests dispatch policy of this algorithm. The ROW IO scheduler was developed with the mobile devices needs in mind. In mobile devices we favor user experience upon everything else, thus we want to give READ IO requests as much priority as possible. In mobile devices we won't have as much parallel threads as on desktops. Usually it's a single thread or at most 2 simultaneous working threads for read & write. Favoring READ requests over WRITEs decreases the READ latency greatly.
The main idea of the ROW scheduling policy is: If there are READ requests in pipe - dispatch them but don't starve the WRITE requests too much. Bellow you'll find a small comparison of ROW to existing schedulers. The test that was run for these measurements is parallel read and write.
Which scheduler is the most stable with decent battery & performance with smartassv2?
danshuynh said:
Which scheduler is the most stable with decent battery & performance with smartassv2?
Click to expand...
Click to collapse
Hello, I am very happy with smartass v2, and CFQ scheduler.
good performance and excellent battery
Another great Stempox guide. Thanks :good:
jayjay3333 said:
Another great Stempox guide. Thanks :good:
Click to expand...
Click to collapse
yes friend, thank you
Thank you! Awesome guides btw, especially for noobs like me
danshuynh said:
Thank you! Awesome guides btw, especially for noobs like me
Click to expand...
Click to collapse
thanks, is a pleasure to help new guys if possible
all about I/O SCHEDULERS
http://forum.xda-developers.com/showpost.php?p=22134559&postcount=4
If you want you can post as governor-scheduler combination frequently used and why.
would be useful
goverrnor: lulzactive
IO: sio
for battery and performance..
kernel matrix ics.. oc 1300mhz,bus speed default..
I've almost always used On Demand / Deadline.
To be honest, I've tried other combos, but I've never really noticed much difference either way. On Demand / Deadline is the default for my current kernel.
Thanks
Thank you sir,
Thanks for the summary!
bedalus said:
Thanks for the summary!
Click to expand...
Click to collapse
I still use the default cfq
soon update the thread with description new i / o scheduler
Can someone shed more light on smartassv2 i/o scheduler ?
Btw I thank the threadstarter for this informative thread ..
snoopnoob said:
Can someone shed more light on smartassv2 i/o scheduler ?
Btw I thank the threadstarter for this informative thread ..
Click to expand...
Click to collapse
hi, smartassv2 is a governor, and the description you can find it here: http://forum.xda-developers.com/showthread.php?t=1767797
Found this about the ZEN scheduler,
Q: What is the zen I/O scheduler?
A: Well, the question that was asked above led me to an analysis of V(R ), deadline, and some others. I already knew, but realized "this is the main feature of V(R), but wait it has no benefit to us smartphone users." So I thought about adjusting the way V(R ) handled requests and how it dispatched them (I chose V(R ) because i'd rather not tinker with a scheduler thats official and widely supported). Then I was looking over it, and realized I might as well just write a new one I don't need any of this stuff. So I came up with something awfully similar to SIO, although its a bit simpler than SIO (closer to no-op) and works just slightly different.
- It's an FCFS (First come, first serve) based algorithm. It's not strictly FIFO. It does not do any sorting. It uses deadlines for fairness, and treats synchronous requests with priority over asynchronous ones. Other than that, pretty much the same as no-op.
Click to expand...
Click to collapse
stempox said:
hi, smartassv2 is a governor, and the description you can find it here: http://forum.xda-developers.com/showthread.php?t=1767797
Click to expand...
Click to collapse
Thank for the link dude ...
OP update.

[REF][SuperFriendly] Explanation of Governors, I/O Schedulers and Kernels [23-Nov]

Introduction
"It takes few hours to make a thread but it doesn't even take few seconds to say Thanks"- arpith.fbi
Click to expand...
Click to collapse
Code:
Don't be afraid to ask me anything.
I won't bite, but I might lick you.
Just thank me for this super brief thread.
Give credits to this thread by linking it if you're using any of my info.
Thank you to you too
Have you unlocked your bootloader of your current device ? If so, read it ! If not, learn the benifits ! :victory:
What is this thread about ? It is a very brief explanation of every governors and schedulers to let you find the best combo for your device.
I've been searching a lot about informations about Kernels, Governors, I/O Schedulers and also Android Optimization Tips. No matter its Google or XDA or other android forums. I will go into it and try the best I can to find these infos. So I thought of sharing it to here for the XPlay users.
My main reason to share this is to benefit users for better knowledge about Kernels, Governors, I/O Schedulers and Tips on Android Optimization. I'm not aware of whether where this should be posted, its related to kernels, governors and schedulers so I think it would be best if I share it to here. Yes, I wrote it word by word with references.Happy learning. :angel:
After months on XDA, no matter its in a development forum or Off Topic forum. Users kept on asking what's this what's that. And I'm sure that not all members will understand what is it until they bump into my thread
FAQs regarding on :-
-I/O Schedulers
-Kernel Governers
-Better RAM
-Better Battery
-FAQs
*Will add more when I found something useful.
Click to expand...
Click to collapse
I do a lot of asking by PM, to learn, it doesn't matter whether its a stupid one. (People who know me understands)
With my experience and lots of asking. I managed to find a lot of infos that we can use to optimize our phone.
I will try to explain as clear as I can.
Governors :-
-Smoothass
-Smartass
-SmartassV2
-SavagedZen
-Interactivex
-Lagfree
-Minmax
-Ondemand
-Conservative
-Brazilianwax
-Userspacce
-Powersave
-Performance
-Scary
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
* Haven't gathered much needed information. Will add it later.
Explanation
OnDemand
Brief
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point, OnDemand will rapidly scale the CPU up to meet the demand, then gradually scale the CPU down when it isn't needed.
Click to expand...
Click to collapse
Review
Brief says all. By a simple explantion, OnDemand scales up to the required frequency to undergo the action you are doing and rapidly scales down after use.
Conservative
Brief
It is similar to the OnDemand governor, but will scale the CPU up more gradually to better fit demand. Conservative governor provides a less responsive experience than OnDemand, but it does save batter
Click to expand...
Click to collapse
Review
Conservative is the opposite of Interactive; it will slowly ramp up the frequency, then quickly drops the frequency once the CPU is no longer under a certain usage.
Interactive
Brief
Available in latest kernels, it is the default scaling option in some stock kernels. Interactive governor is similar to the OnDemand governor with an even greater focus on responsiveness.
Click to expand...
Click to collapse
Review
Interactive is the opposite of Conservative; it quickly scales up to the maximum allowed frequency, then slowly drops the frequency once no longer in use.
Performance
Brief
Performance governer locks the phone's CPU at maximum frequency. While this may sound like an ugly idea, there is growing evidence to suggest that running a phone at its maximum frequency at all times will allow a faster race-to-idle. Race-to-idle is the process by which a phone completes a given task. After that it returns the CPU to extremely efficient low-power state.
Click to expand...
Click to collapse
Review
Good at gaming, Really good. Disadvantages are it may damage your phone if too much usage.
Powersave
Brief
The opposite of the Performance governor, the Powersave governor locks the CPU frequency at the lowest frequency set by the user.
Click to expand...
Click to collapse
Review
Set it to your desired minimum frequency and you won't have to look for your charger for once in a while.
Scary
Brief
A new governor wrote based on Conservative with some Smartass features, it scales accordingly to Conservative's way. It will start from the bottom. It spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It will give the same performance as Conservative right now.
Click to expand...
Click to collapse
Review
Hmm.. Overall I don't see any difference. After I understand its main objective. I was very curious and decided to use it again. Results are the same.. No difference. Report to me if anyone has tested this.
Userspace
Brief
Userspace is not a governor pre-set, but instead allows for non-kernel daemons or apps with root permissions to control the frequency. Commonly seen as a redundant and not useful since SetCPU and NoFrills exist.
Click to expand...
Click to collapse
Review
Highly not recommended for use.
Smartass
Brief
It is based on the concept of the Interactive governor.
Smartass is a complete rewrite of the code of Interactive. Performance is on par with the “old” minmax and Smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.
Click to expand...
Click to collapse
Review
Smartass is rather the governer that will save your battery and make use of your processor for daily use. Like the brief explantion said " Smartass will spend much more time on lower frequencies." So logically you don't need for sleep profiles anymore.
SmartassV2
Brief
Theoretically a merge of the best properties of Interactive and OnDemand; automatically reduces the maximum CPU frequency when phone is idle or asleep, and attempts to balance performance with efficiency by focusing on an "ideal" frequency.
Click to expand...
Click to collapse
Review
This is a much favourite to everybody. I believe almost everyone here is using SmartassV2. Yes, it is better than Smartass because of its speed no scaling frequencies from min to max at a short period of time.
Smoothass
Brief
A much more aggressive version of Smartass that is very quick to ramp up and down, and keeps the idle/asleep maximum frequency even lower.
Click to expand...
Click to collapse
Review
In my personal experience, this is really useful for daily use. And yes, I'm using it all the time. It may decrease your battery life. I saw it OC itself to 1.4 gHz when I set it to 1.2. Good use. Recommended.
Brazilianwax
Brief
Similar to SmartassV2. More aggressive scaling, so more performance, but less battery.
Click to expand...
Click to collapse
Review
Based on SmartassV2. But its advantage is a much more performance wise governor.
SavagedZen
Brief
Another SmartassV2 based governor. Achieves good balance between performance & battery as compared to Brazilianwax.
Click to expand...
Click to collapse
Review
Not much difference compared to SmartassV2. But it is a optimized version of it.
Lagfree
Brief
Again, similar to Smartass but based on Conservative rather than Interactive, instantly jumps to a certain CPU frequency after the device wakes, then operates similar to Conservative. However, it has been noted as being very slow when down-scaling, taking up to a second to switch frequencies.
Click to expand...
Click to collapse
Review
Used it before. Like the name of the governor, I didn't experience any lag whatsoever. Another governor based on performance, but not battery efficient.
MinMax
Brief
MinMax is just a normal governor. No scaling intermediate frequency scaling is used.
Click to expand...
Click to collapse
Review
Well.. it's too normal that I can't really say anything about it..
Interactivex
Brief
InteractiveX governor is based heavily on the Interactive governor, enhanced with tuned timer parameters to optimize the balance of battery vs performance. InteractiveX governor's defining feature, however, is that it locks the CPU frequency to the user's lowest defined speed when the screen is off.
Click to expand...
Click to collapse
Review
A better understanding from the brief to you users, this is an Interactive governor with a wake profile. More battery friendly than Interactive.
Due to current kernels doesn't have these governors. I will be delaying the explanation, its very interesting. If you want it ASAP, post below
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
**********************************************************************************************************************************************************************
I/O Schedulers(thanks to droidphile)
Deadline
Goal is to minimize I/O latency or starvation of a request. The same is achieved by round robin policy to be fair among multiple I/O requests. Five queues are aggressively used to reorder incoming requests.
Advantages:
Nearly a real time scheduler.
Excels in reducing latency of any given single I/O.
Best scheduler for database access and queries.
Bandwidth requirement of a process - what percentage of CPU it needs, is easily calculated.
Like noop, a good scheduler for solid state/flash drives.
Disadvantages:
When system is overloaded, set of processes that may miss deadline is largely unpredictable.
Click to expand...
Click to collapse
Noop
Inserts all the incoming I/O requests to a First In First Out queue and implements request merging. Best used with storage devices that does not depend on mechanical movement to access data. Advantage here is that flash drives does not require reordering of multiple I/O requests unlike in normal hard drives.
Advantages:
Serves I/O requests with least number of cpu cycles. (Battery friendly?)
Best for flash drives since there is no seeking penalty.
Good throughput on db systems.
Disadvantages:
Reduction in number of cpu cycles used is proportional to drop in performance.
Click to expand...
Click to collapse
Anticipatory
Based on two facts
i) Disk seeks are really slow.
ii) Write operations can happen whenever, but there is always some process waiting for read operation.
So anticipatory prioritize read operations over write. It anticipates synchronous read operations.
Advantages:
Read requests from processes are never starved.
As good as noop for read-performance on flash drives.
Disadvantages:
'Guess works' might not be always reliable.
Reduced write-performance on high performance disks.
Click to expand...
Click to collapse
BFQ
nstead of time slices allocation by CFQ, BFQ assigns budgets. Disk is granted to an active process until it's budget (number of sectors) expires. BFQ assigns high budgets to non-read tasks. Budget assigned to a process varies over time as a function of it's behavior.
Advantages:
Believed to be very good for usb data transfer rate.
Believed to be the best scheduler for HD video recording and video streaming. (because of less jitter as compared to CFQ and others)
Considered an accurate i/o scheduler.
Achieves about 30% more throughput than CFQ on most workloads.
Disadvantages:
Not the best scheduler for benchmarking.
Higher budget assigned to a process can affect interactivity and increased latency.
Click to expand...
Click to collapse
CFQ
Completely Fair Queuing scheduler maintains a scalable per-process I/O queue and attempts to distribute the available I/O bandwidth equally among all I/O requests. Each per-process queue contains synchronous requests from processes. Time slice allocated for each queue depends on the priority of the 'parent' process. V2 of CFQ has some fixes which solves process' i/o starvation and some small backward seeks in the hope of improving responsiveness.
Advantages:
Considered to deliver a balanced i/o performance.
Easiest to tune.
Excels on multiprocessor systems.
Best database system performance after deadline.
Disadvantages:
Some users report media scanning takes longest to complete using CFQ. This could be because of the property that since the bandwidth is equally distributed to all i/o operations during boot-up, media scanning is not given any special priority.
Jitter (worst-case-delay) exhibited can sometimes be high, because of the number of tasks competing for the disk.
Click to expand...
Click to collapse
SIO
Simple I/O scheduler aims to keep minimum overhead to achieve low latency to serve I/O requests. No priority quesues concepts, but only basic merging. Sio is a mix between noop & deadline. No reordering or sorting of requests.
Advantages:
Simple, so reliable.
Minimized starvation of requests.
Disadvantages:
Slow random-read speeds on flash drives, compared to other schedulers.
Sequential-read speeds on flash drives also not so good.
Click to expand...
Click to collapse
VR
Unlike other schedulers, synchronous and asynchronous requests are not treated separately, instead a deadline is imposed for fairness. The next request to be served is based on it's distance from last request.
Advantages:
May be best for benchmarking because at the peak of it's 'form' VR performs best.
Disadvantages:
Performance fluctuation results in below-average performance at times.
Least reliable/most unstable.
Click to expand...
Click to collapse
Credits
-droidphile
-kokzhanjia
Reserved for kernel infos
Sent from my WT19i
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
CosmicDan said:
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
Click to expand...
Click to collapse
Really ? Okay will add it in later
Sent from my WT19i
kokzhanjia said:
Really ? Okay will add it in later
Sent from my WT19i
Click to expand...
Click to collapse
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
CosmicDan said:
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Click to expand...
Click to collapse
Yeah. Saw your work Nice one.. anymore in depth infos about kernels at here ? I want to add a bonus one for this..
paragroth said:
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
Click to expand...
Click to collapse
Thanks
Coloured signatures are nice
Nah that's pretty much it
Sent from Xperia Play (R800a) with Tapatalk
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Great thread, this should be sticky!
jabberwocky_one said:
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Click to expand...
Click to collapse
Nono you are right. I read these before and your observation is just about it, thanks for the info
chabbe11 said:
Great thread, this should be sticky!
Click to expand...
Click to collapse
Thank you
Sent from my WT19i with Real Xperia r1
Am I setting it up the right way?
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Gr8 helped me a lot in understanding alll of this .....
bhavei said:
Am I setting it up the right way?
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Click to expand...
Click to collapse
Yes it is right. I didnt really tried the other way that you mentioned, because i have No-Frills pre-installed in my settings..but i see it worked. Of course it will save battery.. Nice
piku2008 said:
Gr8 helped me a lot in understanding alll of this .....
Click to expand...
Click to collapse
Will add more soon About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Click to expand...
Click to collapse
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
CosmicDan said:
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
Click to expand...
Click to collapse
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
Click to expand...
Click to collapse
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
CosmicDan said:
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
Click to expand...
Click to collapse
Oh... i didnt know that.. anyway, I don't think he has his github set up. I didnt saw a link to his github on his thread. And isnt BFS aimed for forward looking(like only performing on a task that is given without any concerns) ? I read about it at google docs about it. And i don't really know how to explain it clearly..
Good luck in your development my frirend. And this thread has been moved to General section. Hope you can find it and Nice to have another friend
Sent from my WT19i with Real Xperia r1
This is nice info,
Thanks
Thanks man. This is awesome. Much appreciated

★ ☆ [Kernel] NuK3RN3L | s2w+s2s | 01-21-14 | 1,900MHz | 3.0.84 | Sense/AOSP | ☆ ★

★ ☆ [Kernel] NuK3RN3L | s2w+s2s | 01-21-14 | 1,900MHz | 3.0.84 | Sense/AOSP | ☆ ★
-NuK3RN3L-
OVERCLOCKED
Edition
Now added!
Santod's Mecha ICS Sense/AOSP Kernel
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
DOWNLOAD:
NuK3rn3l mecha Final
sweep2wake
sweep2sleep
16 Governors
TCP Controls
Zram/Swap
Linaro
OTG
01-20-14
Use Trickster Mod to enable Wake options
You need an updated version of Busybox from the Play Store to use Trickster Mod.
Once that's installed, open it and run the installer.
Then you can install Trickster Mod, grant it su permissions, and use it to enable s2w+s2s and adjust all other kernel settings and tweaks.
Trickster Mod can be found here.
-NuK3RN3L-
stock frequencies
current build
~ or ~
NuK3RN3L-
Overclocked Edition
1,516MHz Default/Max
current build 6-25-13
+ LagFree
-NuK3RN3L-
Aosp NuK3RN3L, with working wifi on Aosp ICS and Jelly Bean.
Only use this for this one on Aosp roms. (CM9/CM10)
[URL="http://www.androidfilehost.com/?fid=23017610006233856"]NuK3RN3L ICS/JB Aosp OC Edition
[/URL]
These have been well tested, but use at your own risk!
I am not responsible for you or your device or anything that you do to it!
​
Included Governors:
SavagedZen
lulzactive
adaptive
hyper
scary
skywalker
brazilianwax
fantasy
SmartassV2
interactive
conservative
userspace
powersave
lionheart
ondemand
performance
How to install:
Flash zip in Recovery
Wipe cache and Dalvik cache
Reboot
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix do work, camcorder not yet.
Will work on things with Joe to improve this.
Click to expand...
Click to collapse
I will try and update my git repo every 7-90 days until I automate it into my buildbox process...
Compiled using the 4.4.3 gcc toolchain.
Big thanks to my buddy Ziggy for his help and inspiration.
XXPachaXX for his work on msm7x30
Flemmard for his work on msm7x30
Also to HTC for finally releasing the source code...
HTCDEV Source files: my copy
​
FAQ:
Hopefully this answers some common questions.
I will add to this as kernel changes are made.
On UnSenseROM Jelato, there is a script in /system/etc/init.d called 00_vdd_levels if I recall the name exactly.
It's essentially a text file that should be either deleted, or remove the ## from the name of it so it doesn't run at boot.
Then whatever app is used to control governors and clock speeds will not get reset upon rebooting, whether you use the built in CPU Controls or No Frills, etc,..
On my other roms, the same rule applies, if there is a script in /system/etc/init.d with vdd levels in the name, remove it or rename it.
On NuSenseX ROM you should be careful touching anything in init.d, or you could break your wifi connection.
Soon, I intend to have kernels that will be baked into each rom, and there will be no need to concern oneself with any of this, and it's really nothing of much concern anyhow.
But I think that about covers most cases...
____
GOVERNORS
1) Ondemand:
Default governor in almost all stock kernels.
One main goal of the ondemand governor is to switch to max frequency as soon as there is a CPU activity detected to ensure the responsiveness of the system.
Effectively, it uses the CPU busy time as the answer to "how critical is performance right now" question.
So Ondemand jumps to maximum frequency when CPU is busy and decreases the frequency gradually when CPU is less loaded/apporaching idle.
Even though many of us consider this a reliable governor, it falls short on battery saving and performance on default settings.
One potential reason for ondemand governor being not very power efficient is that the governor decide the next target frequency by instant requirement during sampling interval.
The instant requirement can respond quickly to workload change, but it does not usually reflect workloads real CPU usage requirement in a short enough time and it may cause it to frequently change between highest and lowest frequency.
2) Conservative:
A slower Ondemand which scales up slowly to save battery.
The conservative governor is based on the ondemand governor.
It functions like the Ondemand governor by dynamically adjusting frequencies based on processor utilization.
However, the conservative governor increases and decreases CPU speed more gradually.
Simply put, this governor increases the frequency step by step on CPU load and jumps to lowest frequency on CPU idle.
Conservative governor aims to dynamically adjust the CPU frequency to current utilization, without jumping to max frequency.
The sampling_down_factor value acts as a negative multiplier of sampling_rate to reduce the frequency that the scheduler samples the CPU utilization.
For example, if sampling_rate equal to 20,000 and sampling_down_factor is 2, the governor samples the CPU utilization every 40,000 microseconds.
3) Interactive:
(currently my recommended governor for best overall battery and performance)
Can be considered a faster ondemand. So - more snappier, less battery!
Interactive is designed for latency-sensitive, interactive workloads.
Instead of sampling at every interval like ondemand, it determines how to scale up when CPU comes out of idle.
The governor has the following advantages:
1) More consistent ramping, because existing governors do their CPU load sampling in a workqueue context, but interactive governor does this in a timer context, which gives more consistent CPU load sampling.
2) Higher priority for CPU frequency increase, thus giving the remaining tasks the CPU performance benefit, unlike existing governors which schedule ramp-up work to occur after your performance starved tasks have completed.
Interactive - It's an intelligent Ondemand because of stability optimizations. Why??
Sampling the CPU load every X ms (like Ondemand) can lead to under-powering the CPU for X ms, leading to dropped frames, stuttering UI, etc.
Instead of sampling the CPU at a specified rate, the interactive governor will check whether to scale the CPU frequency up soon after coming out of idle.
When the CPU comes out of idle, a timer is configured to fire within 1-2 ticks.
If the CPU is very busy between exiting idle and when the timer fires, then we assume the CPU is underpowered and ramp to max frequency.
4) Userspace:
Instead of automatically determining frequencies, lets user set frequencies.
5) Powersave:
Locks max frequency to min frequency.
Can not be used as a screen-on or even screen-off (if scaling min frequency is too low).
6) Performance:
Sets min frequency to max frequency.
Use this while benchmarking!
7) SmartassV2:
Version 2 of the original smartass governor from Erasmux. Another favorite for many a people.
The governor aim for an "ideal frequency", and ramp up more aggressively towards this freq and less aggressive after.
It uses different ideal frequencies for screen on and screen off, namely awake_ideal_freq and sleep_ideal_freq.
This governor scales down CPU very fast (to hit sleep_ideal_freq soon) while screen is off and scales up rapidly to awake_ideal_freq (500 mhz for GS2 by default) when screen is on.
There's no upper limit for frequency while screen is off (unlike Smartass).
So the entire frequency range is available for the governor to use during screen-on and screen-off state.
The motto of this governor is another option for balance between performance and battery.
8) Lulzactive:
Basically interactive governor with added smartass bits and variable (as opposed to fixed amout) frequency scaling, based on currently occuring cpu loads.
Like smartass, it has a sleep profile built-in.
9) Lagfree:
Lagfree is similar to ondemand. Main difference is it's optimization to become more battery friendly. Frequency is gracefully decreased and increased, unlike ondemand which jumps to 100% too often. Lagfree does not skip any frequency step while scaling up or down. Remember that if there's a requirement for sudden burst of power, lagfree can not satisfy that since it has to raise cpu through each higher frequency step from current. Some users report that video playback using lagfree stutters a little.
____
So, Governors can be categorized into 3/4 on a high level:
1.a) Ondemand Based:
Works on "ramp-up on high load" principle. CPU busy-time is taken into consideration for scaling decisions.
Members: Ondemand, OndemandX, Intellidemand, Lazy, Lagfree.
1.b) Conservative Based:
Members: Conservative, Lionheart, LionheartX
2) Interactive Based:
Works on "make scaling decision when CPU comes out of idle-loop" principle.
Members: Interactive, InteractiveX, Lulzactive, Luzactiveq, Smartass, SmartassV2, Brazilianwax, SavagedZen.
3) Weird Category:
Members: Userspace, Powersave, Performance.
Click to expand...
Click to collapse
___
Changelog:
__
062513
Updated 1,516 OC'd Edition!
Added Governors:
LagFree
Lulzactive
SmartassV2
7 more modules built in
062213
Added 1,516 OC'd Edition!
Adjusted cpu frequency tables
Adjusted voltages
Enabled 1,516 MHz Overclock as Default
062113
Powersave governor added for those of you trying to squeeze more out of the battery, or only using the device on wifi.
062013
Interactive governor added for better response time, keyboard reaction, etc,..
​
Reserved...
​
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
Any chance of a dual boot setup?
Check out the Devil kernel and recovery for the note 2......
Would be nice to have a slimmed down AOSP ROM and a Sense one for when you wanted it.
I'm not trying to be rude to anyone but let's keep the feature requests to a minimum until he gets the more important aspects worked out. There is a lot of testing going on with just what this kernel can do as we speak. I'm sure once things calm down the other features can be implemented.
Sent from my ADR6400L using Tapatalk 2
Says AOSP in the title. Can this be used with the CM9 in this thread?
Sent from my NusenseX Bolt using Tapatalk 2
arizonaomnia said:
Says AOSP in the title. Can this be used with the CM9 in this thread?
Sent from my NusenseX Bolt using Tapatalk 2
Click to expand...
Click to collapse
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix BOTH work, camcorder not yet.
Will work on things with Joe to improve this.
Congrats on RLS brosif these guys are lucky you are still carrying the infected flame for this phone !!!!
santod040 said:
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix BOTH work, camcorder not yet.
Will work on things with Joe to improve this.
Click to expand...
Click to collapse
Anyone know if it fixes the Gmail whiteout? I can live without the camcorder but the Gmail thing was too much.
Sent from my NusenseX Bolt using Tapatalk 2
Virus said:
Congrats on RLS brosif these guys are lucky you are still carrying the infected flame for this phone !!!!
Click to expand...
Click to collapse
Good to see you here @Virus.
I haven't seen you since my EVO days!
i flashed both the stock and oc'd versions of this kernel over joe black's cm9 (which was also clean flashed... even wiped my sd) and wifi isn't working. it flat out won't turn on.
i don't have my tbolt in service anymore, so without wifi, i can't use it at all. wifi worked with the included kernel on joe's cm9 rom.
i'm a little pressed for time at the moment, but if a logcat would be helpful, lemme know and i'll post one when i'm back from vacation at the end of the upcoming week.
namurt said:
i flashed both the stock and oc'd versions of this kernel over joe black's cm9 (which was also clean flashed... even wiped my sd) and wifi isn't working. it flat out won't turn on.
i don't have my tbolt in service anymore, so without wifi, i can't use it at all. wifi worked with the included kernel on joe's cm9 rom.
i'm a little pressed for time at the moment, but if a logcat would be helpful, lemme know and i'll post one when i'm back from vacation at the end of the upcoming week.
Click to expand...
Click to collapse
Yeah that's a known issue with flashing it seperate.
There's a couple things not included in the kernel zip, that have to be changed Rom side.
These changes are easily made and Joe should have an update posted soon with this kernel in it and the needed Rom files to have WiFi working.
Sorry for the inconvenience.
It's just become known it would work as well as it does.
Fixes and improvements to his Rom and this kernel are coming.
If he doesn't have it up soon, I'll post a patch for using this on his Rom.
Sent from my HTC6435LVW using xda app-developers app
sweet jesus, you are one amazing dev!
that was a lightning quick response, hah.
it's so nice to see our bastard child of a device still getting some love.
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
You know....if you WANTED to....you know, just for sh1ts and giggles.....you COULD post the version of this without working data, just to give a preview and let people play with it. I remember that Liquid did something similar with an early build of OCS for the Thunderbolt. Or not. Whatever you want to do is fine, of course.
*drooling*
Sent from my NusenseX Bolt using Tapatalk 2
namurt said:
sweet jesus, you are one amazing dev!
that was a lightning quick response, hah.
it's so nice to see our bastard child of a device still getting some love.
Click to expand...
Click to collapse
Yep, santod is the man, no doubt about it.
This device launched more than 2 years ago with froyo, was upgraded to gingerbread, eventually got ICS, and may yet see unofficial jellybean!? That's an amazing run for any phone IMHO.
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
where i can find thunderbolt aosp jelly bean ROM...
olredi tried this kernel on Jelato ROM and make ma fone awesomely blasting fast :good:
guinzo said:
where i can find thunderbolt aosp jelly bean ROM...
olredi tried this kernel on Jelato ROM and make ma fone awesomely blasting fast :good:
Click to expand...
Click to collapse
AOSP jellybean hasn't been released yet, they're still working on it.
quickdraw86 said:
Yep, santod is the man, no doubt about it.
This device launched more than 2 years ago with froyo, was upgraded to gingerbread, eventually got ICS, and may yet see unofficial jellybean!? That's an amazing run for any phone IMHO.
Click to expand...
Click to collapse
+1
Santod, Chief Executive Officer
Sent from my ADR6400L using xda app-developers app
Can anyone please test and see if Onavo works with this kernel? Thanks.
https://play.google.com/store/apps/details?id=com.onavo.android.onavoics

GPU/RAM Overclock

Is there any kernel that allows one to overclock the 6p's GPU and/or RAM? I know you can overclock both CPU clusters so I thought this might be possible as well.
Also, I read awhile ago that undervolting was not possible on the 6p. Does this still hold true?
Thanks
Would still love to know if this is possible. I know that the Snapdragon810 version 2.1 is inside the 6p, which has a stock GPU clock of 630mhz but unfortunately it's onlyclocked to 600mhz.
michaelearth said:
Is there any kernel that allows one to overclock the 6p's GPU and/or RAM? I know you can overclock both CPU clusters so I thought this might be possible as well.
Also, I read awhile ago that undervolting was not possible on the 6p. Does this still hold true?
Thanks
Click to expand...
Click to collapse
The max frequency for the GPU is at 600 mHz. And speaking based on my own usage (as I have no data about other uses), it's very rare for the phone to reach that frequency, even when doing gpu-intensive tasks like gaming. So I think that value would suffice for the heaviest graphical tasks you'd throw at it. That said I've tried almost every kernel out there-AK, Kylo, Franco, Elemental, Googymax, Lean, Zigzag, and God's (back in the day) and have never seen a GPU value higher than 600 mHz so I guess that's the max limit which the GPU reaches as far as kernel tweaking goes.
As for RAM, I don't think there's such thing as "overclocking" it, though some custom Kernels provide customization for ZRAM, Low Memory killers, Virtual memory options, etc. If you wish to maximize the available RAM and memory performance then disabling ZRAM and tweaking the other values will be the way to go.
As for undervolting, I could gather from past reading that the values are only present on most kernel tweaking apps for visibility purposes. Mainly for People to know the stock voltages of the phone. I don't think it can be tweaked, and in the first place tweaking it is not ideal due to the big.Little nature of the SD 810.
Overall, my personal opinion is that even if such extreme customization (GPU and RAM, undervolting) is possible I'm afraid it won't be practical. The overall custom kernel development the phone enjoys is already top notch, and already pushes the boundaries of performance and battery life. (thanks to our Kernel Devs) Suffice to say we are currently in kernel tweaking heaven already.

Kernel questions.

Hello XDA members,
I have looked around on the internet and XDA and I couldn't find a satisfactory answer to my question so here I am.
1. What is the function of Kernel?
2. What is the advantage of custom kernel over stock?
3. Is Kernel something that I just install and forget? or do I have to make edits. If edits then what sorts?
I am using latest TWRP, Pixel Exp with magisk. About to try the xposed beta. Thought get more in depth to get max out of my device.
Thank you all in advance.
1. A kernel is the "core" of the OS, a piece of code that acts as a mediator between the hardware and software in your phone. It decides how your apps can use the hardware, it manages your CPU's and GPU's clock speeds (lowering them in low usage and raising for resource - intensive apps) and manages the voltages your components operate on. It also reserves RAM space for apps, decides on which CPU cores an app will run, etc. Everything you do, all input sensors, everything your apps do, and all your phone's output information goes through the kernel.
2. Custom kernels are customised kernels, tweaked to the liking of whoever created them. The benefit of custom kernels is that they are usually better optimised, they handle and distribute your phone's resources better than the stock kernel, which can give you better battery life and performance. It can also be changed to allow overclocking, meaning higher CPU or GPU clock speeds. Paranoid Android roms use a kernel that is extremely well-optimised for Qualcomm's chipsets, probably the best kernel for our device.
3. As for edits, some kernels are made to be better optimised for your device, providing a performance/battery life improvements out-of-the-box. Most kernels come with an app, giving the user control over how their kernel behaves by allowing manual tweaks, where you can raise/lower CPU and GPU clock speeds yourself. They also add some functions, things you couldn't change on a stock kernel, and some add extra CPU governors to choose from. Governors are behaviour models for your phone's CPU, they define how your CPU acts, how fast it raises clock speed under load, and how fast it lowers it back when high processing power is no longer needed. For example "performance" governor will always keep all cores at a maximum clock speed (which draws loads of energy), while "powersave" will reduce clock speeds to a minimum. Custom kernels usually add custom made governors that aim for performance, battery life, or balance of the two.
There are many more tweaks to the kernel, like memory-management, which tells the kernel when to kill bacground apps, and how many apps can remain open in background (in RAM) before getting killed.
As for if you need to change stuff in the kernel, most of the time they come preset to the values the kernel creator thinks is best, so probably no, but you sure can benefit from researching the tweaks and creating custom profiles if you need to squeeze maximum battery life from your phone when your battery is almost dead, or you want to play some intensive games and need every bit of power your phone can give you.
In my opinion, Moto G5 plus has a pretty decently tweaked kernel, but since it heats up very little and has great battery life it has some overclocking potential. It should probably be able to handle a boost to 2.2GHz like on Snapdragon 626, which seems exactly the same as 625 just with a higher clock speed.
bazinga137 said:
1. A kernel is the "core" of the OS, a piece of code that acts as a mediator between the hardware and software in your phone. It decides how your apps can use the hardware, it manages your CPU's and GPU's clock speeds (lowering them in low usage and raising for resource - intensive apps) and manages the voltages your components operate on. It also reserves RAM space for apps, decides on which CPU cores an app will run, etc. Everything you do, all input sensors, everything your apps do, and all your phone's output information goes through the kernel.
2. Custom kernels are customised kernels, tweaked to the liking of whoever created them. The benefit of custom kernels is that they are usually better optimised, they handle and distribute your phone's resources better than the stock kernel, which can give you better battery life and performance. It can also be changed to allow overclocking, meaning higher CPU or GPU clock speeds. Paranoid Android roms use a kernel that is extremely well-optimised for Qualcomm's chipsets, probably the best kernel for our device.
3. As for edits, some kernels are made to be better optimised for your device, providing a performance/battery life improvements out-of-the-box. Most kernels come with an app, giving the user control over how their kernel behaves by allowing manual tweaks, where you can raise/lower CPU and GPU clock speeds yourself. They also add some functions, things you couldn't change on a stock kernel, and some add extra CPU governors to choose from. Governors are behaviour models for your phone's CPU, they define how your CPU acts, how fast it raises clock speed under load, and how fast it lowers it back when high processing power is no longer needed. For example "performance" governor will always keep all cores at a maximum clock speed (which draws loads of energy), while "powersave" will reduce clock speeds to a minimum. Custom kernels usually add custom made governors that aim for performance, battery life, or balance of the two.
There are many more tweaks to the kernel, like memory-management, which tells the kernel when to kill bacground apps, and how many apps can remain open in background (in RAM) before getting killed.
As for if you need to change stuff in the kernel, most of the time they come preset to the values the kernel creator thinks is best, so probably no, but you sure can benefit from researching the tweaks and creating custom profiles if you need to squeeze maximum battery life from your phone when your battery is almost dead, or you want to play some intensive games and need every bit of power your phone can give you.
In my opinion, Moto G5 plus has a pretty decently tweaked kernel, but since it heats up very little and has great battery life it has some overclocking potential. It should probably be able to handle a boost to 2.2GHz like on Snapdragon 626, which seems exactly the same as 625 just with a higher clock speed.
Click to expand...
Click to collapse
Wow.
Thanks for such a detailed reply.
I will download alize and see where it takes me
Thanks again.

Categories

Resources