[Q] @Kernel Developers - how do you measure performance? - Galaxy S III Q&A, Help & Troubleshooting

To all the kernel developers here, I have a simple question?
How do you measure the performance of your kernels?
Do you use benchmark apps from the market or do you have some profiling tools that may tell you other facts that just:
- max. CPU throughput
- max GPU frames per second
- max I/O writes/reads in bytes per second
I think most of those points are rather useless for a phone, they seem like they come from the old days of computer benchmarks. For example GPU fps will usually capped by vsync. and min. frame rate(bellow 25 fps) percentage over time is usally not even mentioned. Max I/O writes/reads are not really important, for most of the time it's more important to have higher priority for I/O reads than for writes, because they occur less frequently and may "interrupt" any reading process like music players, with the only exception of video/audio recording. For the CPU, measuring the total active time+power draw to perform a task is also more important than just the spike performance.
So, I would really like to know, how you all do proper profiling of your kernels.
NOTE: PLEASE, DO NOT TAKE THIS POST AS DISRESPECTFUL OF ALL YOUR HARD & DEDICATED WORK - I REALLY APPRECIATE IT!
Thomas

Related

[Q] kernals, ghz, overclock ques.

call me a noob but i gotta ask, just what does the kernals do to the phone thats so special, and all the ghz talk means what. i rooted my device for the teather and customizing, and now i see all this talk of kernal this, overclock that, and different ghz people are getting can someone explain to me what this does for your phone, should i be interested???
popcorn kernals?
the higher your ghz the faster your phone is.
overclocking is making your ghz higher
and kernals is what allows you to overclock(sorta)
lol dude...you should prob. take your time with customization but ghz is in reference to the speed of the processor. So...theoretically the higher the number the better your phone should perform...t, eoretically lol. Note that with a higher ghz value the worse your battery life will be unless the kernel is written really well. Also the kernel is the code that controls the devices hardware. (brain)
The nice thing is that you can generally play with different kernels without having to wipe and redo your phone. Also, if you really want to play with the various kernels out there you should get setcpu from the market. It let's you set your phone to make use of the processor in an over clocked (OC) application but it can also let you under clock your phone when your not using it, such as when the screen is off. This will help you conserve battery life. But be careful, over clocking can lead to over heating and other problems if you''re not careful
sounds very interesting, hmmm. so in the coming months people could create kernals to acheive speeds to challenge dual core phones
the kernels already are challenging dual core phones. The thunderbolt currently has a 2ghz kernel. The motorola atrix is a 1 ghz dual core... Thunderbolt definately rivals it with overclock kernel
Sent from my ADR6400L using XDA App
A "kernel" is the OS layer that sits between the applications and hardware. So, when an application says "light up LED" it eventually goes through the kernel to do this, most likely by a request/system call.
The speed of a CPU is measured in hertz (frequency). So, a 1 Ghz CPU can perform over 1 billion operations in one second. The frequency can be increased (overclocked). When you do so, this can damage the CPU (most likely due to heat). Heat can also cause the CPU to run efficiently. So, if you overclock too high, you COULD end up running slower than if you had just left it at 1 Ghz. Changing the frequency can also hinder stability.
so with it being so dangerous how do u know what kernal to trust and whats a safe limit in hertz, do u stop at 1.5, because 2ghz sounds like pushing it
This thread is so full of misinformation it is comical. To start, higher clock speed does not always result in better performance.
Secondly, everyone has their own preference. The best bet is to find the perfect balance for your needs. For many people, overclocking the CPU is not very beneficial... since the device is already plenty fast at stock 1GHz speeds. A lot of users would rather use custom kernels to make their device more power efficient and use SMARTASS governors and lower voltages.
Mess around with kernels and see what you like the best! (always remember to create a backup before flashing... this allows you to easily revert back if something goes awry).
You mean they're not popcorn kernels?? Lol
bmcclure937 said:
This thread is so full of misinformation it is comical. To start, higher clock speed does not always result in better performance.
Secondly, everyone has their own preference. The best bet is to find the perfect balance for your needs. For many people, overclocking the CPU is not very beneficial... since the device is already plenty fast at stock 1GHz speeds. A lot of users would rather use custom kernels to make their device more power efficient and use SMARTASS governors and lower voltages.
Mess around with kernels and see what you like the best! (always remember to create a backup before flashing... this allows you to easily revert back if something goes awry).
Click to expand...
Click to collapse
Very well written and informative post, thanks brah!
skinien said:
A "kernel" is the OS layer that sits between the applications and hardware. So, when an application says "light up LED" it eventually goes through the kernel to do this, most likely by a request/system call.
The speed of a CPU is measured in hertz (frequency). So, a 1 Ghz CPU can perform over 1 billion operations in one second. The frequency can be increased (overclocked). When you do so, this can damage the CPU (most likely due to heat). Heat can also cause the CPU to run efficiently. So, if you overclock too high, you COULD end up running slower than if you had just left it at 1 Ghz. Changing the frequency can also hinder stability.
Click to expand...
Click to collapse
+1 ninja point for correctly saying "over 1 billion"
Sent from my ADR6400L using XDA App
It should be noted that most phones are definitely capable of being overclocked to a reasonable extent.
the majority of kernels we nexus one users play with, is undervolting the and playing with teh voltage tables to maximize standby battery life, at the same time overclocking the high end to improve performance. but really its about lowering voltage to improve battery life.

[Q] Overclock Honeycomb View

Hey guys,
i know that there was an overclocked kernel for GB, just curious if any developers are planning on coming out with an updated kernel for the View Honeycomb that will support overclocking....now with HC we can really push these things to the limit and get the most out of them.
hasseye said:
Hey guys,
i know that there was an overclocked kernel for GB, just curious if any developers are planning on coming out with an updated kernel for the View Honeycomb that will support overclocking....now with HC we can really push these things to the limit and get the most out of them.
Click to expand...
Click to collapse
LeeDroid's ROM has a kernel which allows overclocking.
http://forum.xda-developers.com/showthread.php?t=1406851
You need kennel source first
Sent from my HTC Flyer P510e using xda premium
The CPU usable limit is about 1.8 vs. stock 1.5 Ghz. So you can get a little more, but you have to remember for most of the intensive tasks, its not the CPU.... but the GPU that does the brunt of the work, therefore you might not even notice the difference when the CPU is overclocked. For example your Gt3 game won't frame any faster because the video is rendered by the GPU, not the CPU. The custom kernels also enable some difference CPU governor schemes, which might improve observed performance for some things. All of these things factor into battery usage. In general increased performance means more aggressive use of battery power.
DigitalMD said:
The CPU usable limit is about 1.8 vs. stock 1.5 Ghz. So you can get a little more, but you have to remember for most of the intensive tasks, its not the CPU.... but the GPU that does the brunt of the work, therefore you might not even notice the difference when the CPU is overclocked. For example your Gt3 game won't frame any faster because the video is rendered by the GPU, not the CPU. The custom kernels also enable some difference CPU governor schemes, which might improve observed performance for some things. All of these things factor into battery usage. In general increased performance means more aggressive use of battery power.
Click to expand...
Click to collapse
Hey, what about our bragging rights?
We already have the fastest CPU on the market. Do you want to crush and disenfranchise the competition?
I actually would prefer under clocking, undervolting better process management. I want better battery life.
Leedroids, custom kernel , and others, allow for under or over and also for precise voltage adjustments at each speed. Other ways to get better battery are various governors that are less aggressive than the performance governor. Check the Leedroid and other treads for more info. Of course the biggest power eaters are the display and the GPU, if you are doing video or games the GPU will consume a lot and there is not much to can do with that. Display on eats battery, you can reduce brightness to help.

Optimization help

Okay, so I'm REALLY anal about the speed of my phone, the slightest bit of stutter or lag from just the notification center itself really bothers me. I was wondering if someone could recommend some really good settings for my phone
I currently am running
JellyBam 6.3.0 (JB 4.2.2)
4Aces Kernel
I would like some good settings regarding governor, CPU Frequency, and any other things I can do including stuff in developer options, if that helps. Thanks!
It is likely that you will always have "some" degree of lag present in the note 1. Due in large part to our GPU. We are also limited in performance by our dual core CPU.
That being said, the closest to zero lag I've found, is using Flappjaxxx current JB AOSP build, (0225) combined with nova launcher, and his newest 3.0.9 ALT kernel.
Windows, transition, and animator settings to "off" in development settings.
Wheatley governor set to 384 min, 1.72 max.
system tuner app on system controls set to "recommended".
No over/undervolt.
forced GPU rendering in development settings.
These are my main settings, but yours will likely differ.
Happy tuning....g
^^Limited performance from "only a dual core" ...
Hardware is WAY ahead of software right now.
The second core is offline most of the time due to no load and developers of apps not fully understanding how to utilise multiple threads...
Adding more cores on top of an unused core ain't really gonna help much.
And yet we cant even stream a quality youtube video above 22 FPS, all the while the MSM8660 specs boast a capability of nearly 60 FPS with the Adreno 220 GPU.
So my question is, Are we seeing reduced performance from the CPU, or the GPU. It cant be all software, as we see the reductions when ranging software from GB to JB.
Drivers are in play of course, but I can't hardly imagine a piece of code so poorly made, as to reduce output capacity by 50%.
Not doubting you brother because I "know" you know your way around this machine, and because we so many times have traveled the same paths of thought. And it's entirely possible I'm missing a critical point here. But damn...I wanted the stated video speeds, and I'm not getting what Qual and company promised me. and in a direct comparison to the note2 quad, it's night and day as I watch the same video on my note1 next to my wifes 2. The odds are in favor of 2 cores running low speed on the quad core unit, as opposed to our note 1 running a single core wide open until the second one is needed. That of course was the basis for my statement.
OP can tweak for many great improvements, but I personally feel like we were duped on the claimed output of the 8660.....g
Just get a wife - then the phone lag will seem so trivial.
LOL .....he speaks the truth ....g

Improve the standby time of op2 , for rooted phones.

after waiting impatiently for the arrival of your op2 , many are disappointed with the low battery standby....specially if you are using LTE.
issues :
1) even having such a large battery, getting poor battery life.
2) even if the phone is idle, battery drains :crying:
so after having it for almost 2 weeks, i have learned most of the cpu tuner and battery saving apps wont work with op2, its not because of software, basically snapdragon 810's big little architecture is new and apps in the market are not compatible with this octacore new chipset.
and because of very less manufacturers are using this SOC as we now know why... and they were right... it heats up a lot!!! so app developers have not concentrated an specific app for this SOC.
so after lots of mix and matches, finally have come up with a stable solution as follows :
a) your phone should be rooted.
b) install 3c cpu manager from playstore.
c) open minimum 6 apps in background maximum the better.
( remember if no apps are running in background then cpu manager will show only maximum 1.555 ghz. max frequency and 384 mhz low frequency single setup only and big little architecture dual setup wont be shown ie: 810 has 4 cores running @ 1.555 ghz max and other 4 cores @ 1.76 ghz max. and both setups at 384 mhz minimum. )
d) open cpu manager, there should be 2 different setups, if not then open more apps in background, simply change the governor to ON-DEMAND, from interactive and set it on and reboot, as i have noticed with interactive governor even during standby, processor does not stays idle at lower frequencies.
after changing the governor, i have noticed that during standby cpu frequencies are in idle or at the lowest. which highly improvises the battery standby life and haven't noticed any performance degradation.
you can even limit the higher cores frequencies from 1.76 ghz to 1.55 ghz... improving up-to some limit of over heating issues and better standby time.
these are just the findings i discovered with my phone, so don't blame me if anything goes wrong, do it at your own risk.
buntybauva said:
after waiting impatiently for the arrival of your op2 , many are disappointed with the low battery standby....specially if you are using LTE.
issues :
1) even having such a large battery, getting poor battery life.
2) even if the phone is idle, battery drains :crying:
so after having it for almost 2 weeks, i have learned most of the cpu tuner and battery saving apps wont work with op2, its not because of software, basically snapdragon 810's big little architecture is new and apps in the market are not compatible with this octacore new chipset.
and because of very less manufacturers are using this SOC as we now know why... and they were right... it heats up a lot!!! so app developers have not concentrated an specific app for this SOC.
so after lots of mix and matches, finally have come up with a stable solution as follows :
a) your phone should be rooted.
b) install 3c cpu manager from playstore.
c) open minimum 6 apps in background maximum the better.
( remember if no apps are running in background then cpu manager will show only maximum 1.555 ghz. max frequency and 384 mhz low frequency single setup only and big little architecture dual setup wont be shown ie: 810 has 4 cores running @ 1.555 ghz max and other 4 cores @ 1.76 ghz max. and both setups at 384 mhz minimum. )
d) open cpu manager, there should be 2 different setups, if not then open more apps in background, simply change the governor to ON-DEMAND, from interactive and set it on and reboot, as i have noticed with interactive governor even during standby, processor does not stays idle at lower frequencies.
after changing the governor, i have noticed that during standby cpu frequencies are in idle or at the lowest. which highly improvises the battery standby life and haven't noticed any performance degradation.
you can even limit the higher cores frequencies from 1.76 ghz to 1.55 ghz... improving up-to some limit of over heating issues and better standby time.
these are just the findings i discovered with my phone, so don't blame me if anything goes wrong, do it at your own risk.
Click to expand...
Click to collapse
This has nothing to do with apps, just poor drivers on the kernel side, scheduler isn't properly coded for this SoC, and the fact that there is no dynamic hotplugging options available without causing the phone to reboot under certain circumstances doesn't benefit us any. Check out some of the custom kernels, as they may increase your idle battery life, on my own kernel I saw .5% drain per hour max. For reference I saw about 20 hours idle and sitting at 89% on my kernel.
DespairFactor said:
This has nothing to do with apps, just poor drivers on the kernel side, scheduler isn't properly coded for this SoC, and the fact that there is no dynamic hotplugging options available without causing the phone to reboot under certain circumstances doesn't benefit us any. Check out some of the custom kernels, as they may increase your idle battery life, on my own kernel I saw .5% drain per hour max. For reference I saw about 20 hours idle and sitting at 89% on my kernel.
Click to expand...
Click to collapse
i really appreciate your findings with the kernel, but my post is intended for people like me who does not wants to mess up with a stock kernel, so that future OTA updates can be patched without much hassle.
as you see, oxygen os is quite new and incomplete when compared with other's have to offer. so i expect lots of future updates immediately by the OP to improve and stabilize the OS.
I am giving snapdragon battery guru a try, it's for Qualcomm processors. But I'm not very experienced in this stuff. I think it has helped but if someone with more experience wants to give it a try. Maybe they can shed some new light on this subject.
This is the result with on-demand governor settings when phone is idle. with stock kernel and stock frequencies.
Ondemand has always been my fvorite for all past phones. in op2 however it always reverts back to original after interactive. the best battery saver for any phone is swithching to 4.4.2. Azimg batteru life. unfortunately notpossble with op2
buntybauva said:
i really appreciate your findings with the kernel, but my post is intended for people like me who does not wants to mess up with a stock kernel, so that future OTA updates can be patched without much hassle.
as you see, oxygen os is quite new and incomplete when compared with other's have to offer. so i expect lots of future updates immediately by the OP to improve and stabilize the OS.
Click to expand...
Click to collapse
Being rooted alone will prevent OTA updates. You have to flash the full stock ROM when there's an update anyway which would overwrite the kernel.

How To Guide Better battery life and less heat-up

A great way to reduce heat generated on the xperia 1 iii/5 iii also gain bit more battery life.
There was a debate on why the snapdragon 888 heats up and the 2 reasons most told was ''Samsung's manufacturing process'' and that the "GPU was overclocked to 800+ Mhz to excel in benchmark"
I reduced the GPU freq to 491 Mhz, I had top temp 45 Celsius, before it went past 50 Celsius . So in the end reduced a bit of CPU and GPU and got good battery life and way less hot.
First root phone.
Then install
3c cpu manager - Android Apps on Google Play
Enjoy millions of the latest Android apps, games, music, movies, TV, books, magazines & more. Anytime, anywhere, across your devices.
play.google.com
Any settings from this application is temporary, as you restart the phone the frequency are back to default, only change maximum freq nothing else don't change the governors.
My settings:
CPU 1: Max freq = 998 Mhz
CPU 2: Max Freq = 1.2 Mhz
CPU 3: Max Freq = 1.3 Mhz
GPU : Max Freq = 419 Mhz
Try and post the experience and if any improvement (Mention with region model numbers)
:-Since rooted might want to try call recording , great app. Since native sony doesn't support call recording in many regions.
Releases ยท chenxiaolong/BCR
A Basic Call Recorder for rooted Android devices. Contribute to chenxiaolong/BCR development by creating an account on GitHub.
github.com
Tried your settings but after reboot it doesn't stick it reverts back to original settings
Mangtas_666 said:
Tried your settings but after reboot it doesn't stick it reverts back to original settings
Click to expand...
Click to collapse
Yes it wont stick, untill you flash modified kernel it doesn't stick but if you dont reboot it wont go. Also after setting the frequency, wait for the phone to sleep once then temperature stays to a max and for me the battery life increased, without any performance degrade.
Yeah the issue is there is no modified kernel out there for our device. Kirisakura kernel does not fully support our xperia 1 iii. Sony haven't released their source code.
Try the application and if you dont like to keep the application you can remove it, still it keeps the frequency you set, till you restart the device. Main for heating up in phone is the GPU, as per what i learned, reducing its frequency itself , reduced heat a lot. Try and let know your SOT and heat temperature avg.
Yeah i have EXkernel manager it indeed lessen the heat specially when gaming.
Kirisakura kernel supports our device now..

Categories

Resources