[Kernel] [PrimoU] 2013/05/21 Titanium-KISS

Search This thread

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
Hi

Build updated
http://xdaforums.com/showpost.php?p=28599248&postcount=2

Actually not much new except xz compression
to reduce download size and slightly improve kernl boot time

sio I/O scheduler is disabled for now until I can say for sure
that it has nothing to do with the issues that I discovered today

I would recommend to use deadline since it is a good choice
for our device.

Regards

max
 

Lloir

Inactive Recognized Developer
Mar 23, 2009
6,238
8,029
Samsung Galaxy Note 8 (2017 Phone)

Slinkee

Member
May 25, 2012
36
1
Just wondering. Is it possible that the kernel is the fault behind a battery drain? I've used titanium build 5 before this, and I can reassure myself that there was a profound difference in terms of battery life

Sent from my HTC One V
 

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
Which kernel is giving you the better battery life: KISS or Titanium?

I have to quote this again!

There is NO difference between stock kernel and Titanium-KISS if you
1) dont use OC and/or UV
2) use govener ondemand and I/O scheduler deadline

It is just the same kernel source code!

The only difference is that HTC perflock is disabled else you
couldnt do any cpufreq switching at all.

Since I also know the Titanium code well enough to say this :)
I cant image a difference between those two that has a
significant effect and battery life aside from the settings above.

regards

max
 

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
Hi

Just wondering. Is it possible that the kernel is the fault behind a battery drain? I've used titanium build 5 before this, and I can reassure myself that there was a profound difference in terms of battery life

To proove this you would need to do exact measurement of those two different setups
doing exact the same things for a specific period of time and comparing the
battery level afterwards.

Everything else is just "guessing" :)

I guess you use OC right?

Are you sure you are not running an app that runs at OC speed for a long time?
The battery usage on OC frequencies is of course higher but this is
the same for Titanium and Titanium-KISS

So I would doubt that the difference between Titanium and Titanium-KISS is
the main reason for a faster battery drain.

Of course if you can proove me wrong you are welcome :)

Regards

max
 

flar2

Recognized Developer
Jun 11, 2012
18,897
87,868
Southwestern Ontario
elementalx.org
I have to quote this again!

There is NO difference between stock kernel and Titanium-KISS if you
1) dont use OC and/or UV
2) use govener ondemand and I/O scheduler deadline

It is just the same kernel source code!

The only difference is that HTC perflock is disabled else you
couldnt do any cpufreq switching at all.

Since I also know the Titanium code well enough to say this :)
I cant image a difference between those two that has a
significant effect and battery life aside from the settings above.

regards

max

I understand this.

However, there could be differences in battery life between your kernel and adi-pat's kernel because he adds many tweaks to i/o, memory management and other things that could affect it, inadvertently or not.
 

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
However, there could be differences in battery life between your kernel and adi-pat's kernel because he adds many tweaks to i/o, memory management and other things that could affect it, inadvertently or not.

Fully agreed :)

And I would be very happy if anyone could do such a comparison
in battery lifetime for the 3 kernels so that we get "real" numbers
that we can compare.

Does anyone know a app that allows e.g. scripted "workflows"
So that you can create a workload on the device that can be
reproduced easily?

regards

max
 
Last edited:

Slinkee

Member
May 25, 2012
36
1
That's why I've said I can reassure MYSELF. Other than that I didn't do any research to prove my point. It's just that from everyday usage I can notice the battery level decrease just by looking at it. Sorry if I resurface any confusion or annoyance

Sent from my HTC One V
 

ckpv5

Inactive Recognized Contributor
Feb 11, 2008
14,354
18,301
Kuala Lumpur
For me, this kernel is running great for both performance and battery.
Fully charge before sleep, wake up after 8 hours, it still show 100 with all wifi & network on.

Leave the phone for about three hours with no calls except reading some e-mail, it is a very minimal battery drainage.

All I can say, it is really good in idle.

Keep up the good work Max :)
 

Attachments

  • 2012-07-14_17-50-10.jpg
    2012-07-14_17-50-10.jpg
    27.5 KB · Views: 253
Last edited:
  • Like
Reactions: maxomid

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
Hi

Keep up the good work Max :)

Thanks - Actually I am still trying to find out a way to "really"
compare the 3 kernels now by different "numbers"

To get "raw" performance numbers is "easy" with any
benchmark toiol available out there.

But especially for batter life is is rellay tough to find a "reproducable"
test that can give numbers that are "compareable"

So any input from anyone on how this can done would be
very welcome.

Regards

max
 

ckpv5

Inactive Recognized Contributor
Feb 11, 2008
14,354
18,301
Kuala Lumpur
Governor - smartassV2 - OC - 1.5GHz for wake, no OC for sleep and UV -50.
 

Attachments

  • 2012-07-14_19-29-02.jpg
    2012-07-14_19-29-02.jpg
    34.9 KB · Views: 255
  • 2012-07-14_19-29-12.jpg
    2012-07-14_19-29-12.jpg
    35.2 KB · Views: 211

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
soo which governor you used ckpv5? and oc to ghz -??

From my current experience
I have max 1.2GHz which is enough to get some additonal "boost" if required
IMHO 1.5GHz is not giving much additional advantages.
Of course this heavily depends on what you are doing with your phone

Additional I use -50mV UV for all frequencies (set on startup in a init.d script)
Cannot really tell you the "effect" in the long run but gives me a "feeling"
that battery live is better based on simple physics :)

For goveners:
I posted a link above where you will find advantages and disadvantages of
the different goveners. Additional the goveners can be tweaked for different
"profiles" e.g. for smartassV2 you can have a set of settings that will make it
more battery friendly or more performance friendly.

How goveners "work":
The difference is mainly how the govener "scale" the cpu frequencies
based on the load. If the govener scales up "slowly" it is better for
battery but worse for performance. If it scales up fast to higher
frequencies it is of course better for performance but worse for
the battery.

Regards

max
 
  • Like
Reactions: paarthdesai

maxwen

Senior Member
Jun 10, 2012
8,068
10,288
Hi

And just as an announcement
I "cherry picked" a few changes both from Adi_Pat and the "mainline" kernel
that I think are very useful but still are "safe" to be included in the KISS kernel

Most of those patches are widely used in different kernel builds
for other android devices

I am still testing them today to make sure they dont have unwanted
"sideeffects" and will post the build tonight.

Some info on USB OTG:
I am waiting for my USB OTG cable to arrive to do some real testing
then I can tell you more.

Regards

max
 

Top Liked Posts

  • There are no posts matching your filters.
  • 89
    Hi

    IMPORTANT: Before you continue reading!
    At the moment this kernel is only for PrimoU devices
    and NOT for PrimoC (CDMA) devices

    IMPORTANT for CM users
    If you want to use CM or a CM based ROM choose the correct kernel!
    CM9 needs a different ramdisk.

    With the permission from Adi_Pat I would like to announce my kernel build
    All credits to this should go to Adi_Pat cause he did the hard work for
    providing me with all I need. Therefore also the name has been
    choosen to make this clearly visible.

    This is just a first announcement.
    I will upload the first image tonight

    Principle #1:
    Provide a kernel that is as close to stock as possible but provides
    additional features that will improve functionality and/or performance

    Some Q&A you might have
    Q: what stands KISS for?
    A: Keep It Simple, Stupid! :)
    My aim is to provide a kernel that is 99.99% stock with just additional features
    In the first build you will see
    -OC (max 1.5)
    -UV
    -2 new goveners (lionheart, smartassV2)
    -1 new scheduler (sio)

    Q:will you provide a kernel with 2.0GHz?
    A:No - since I want to provide a stable kernel and
    my experiences showed that only using up to 1.5 is reliable

    If you like to have higher frequencies you can
    1) use Adi_Pats kernel
    2) build your own kernel based on my changes and enable higher frequencies

    Q:can I build my own kernel based on your changes?
    A:sure. I will provide a patch file that can be applied on the original
    sources provided from HTC

    Q:how "close" is your kernel to stock?
    A:actually if you dont use OC, UV and use govener=ondemand and
    scheduler=deadline this IS stock kernel

    Q:can you include feature "xy" in your build?
    A:I will check and if it is not "against" principle #1 -Yes

    Q:will you test your kernel builds?
    A:yes. I will only provide images that have been tested to
    1) boot without problems
    2) have run through a basic test trying to include all important features
    3) run some benchmarks to confirm that changes are not decreasing basic performance values

    Q:how to install your kernel?
    A:like titanium kernel
    fastboot flash boot

    regards

    max
    39
    I provide a complete folder with all downloads
    please look at the following "naming conventions" for selecting
    the correct image for your ROM!

    Images containing "OC-UV" will have presets
    Images containing "CM9" are for CM9
    Images containing "CM10" are for CM10
    All others are for stock (sense) ROMs

    Download:
    http://www.mediafire.com/?e1chs7tzcsstc

    github:
    https://github.com/maxwen/primou-kernel-KISS

    Build 201305210014
    Changelog:
    -reverted to BFQ v5.1 - v6 causes problems
    -smartmax update

    Build 201305141244
    Changelog:
    -upgrade to BFQ v6
    -added smartmax CPU governor

    Build 201305062354
    Changelog:
    -enabled fauxsound support
    -added double tap to wake
    allows waking up the device by double tapping on the lower part of the screen - disabled by default
    sysfs interface:
    Code:
    /sys/android_touch/s2w_allow_double_tap
    1 -enable 0 - disable
    Code:
    /sys/android_touch/s2w_double_tap_barrier_y
    default 1300 - y-barrier below that taps will be recognized
    Code:
    /sys/android_touch/s2w_double_tap_duration
    default 150 - time in ms for minimal duration between the two taps
    Code:
    /sys/android_touch/s2w_double_tap_threshold
    default 150 - threshold how much longer the duration can be then duration

    Build 201302150054

    Changelog:
    -added fast charge
    to enable run
    Code:
    echo 1 > /sys/class/power_supply/battery/fast_charge

    ------------------------------------------------------------------------------------

    Build 201212251804

    Changelog:
    -multi touch fix - thanks to d-panja3 for pointing me at this

    ------------------------------------------------------------------------------------

    Build 201212180251
    ChangeLog:
    -added KSM support - see here how to use it

    ------------------------------------------------------------------------------------

    Build 201212152225
    ChangeLog:
    -completely new S2W based on the work of nik3r and myself for the HOX+

    ------------------------------------------------------------------------------------

    Build 201212021155
    Changelog:
    -switched to linaro 4.7 toolchain
    -overhaul of compile flags
    -improved lowmemorykiller
    -added some arm specific fixes and enhancements

    ------------------------------------------------------------------------------------

    Build 201211140025

    KISS kernels will from now on only for sense ROMS
    CM users use HELLBOY kernel http://xdaforums.com/showthread.php?t=1954967

    Changelog:
    -added BFQ scheduler

    ------------------------------------------------------------------------------------

    Chanelog Summary for all builds:
    -new optimized ARM toolchain used
    -some tweaks and fixes in vm
    -added Proportional Rate Reduction for TCP - by Google http://research.google.com/pubs/pub37486.html
    -added USB host support.
    -added two-way call recording - Please consider local laws that prohibit using call recording!
    based on patch found here http://xdaforums.com/showthread.php?t=1048182
    -added conservative govener
    -switched RCU to CONFIG_TINY_PREEMPT_RCU - reduced memory usage
    -enabled SFB net scheduler CONFIG_NET_SCH_SFB http://lwn.net/Articles/429449/
    -applied patch for optimized sha1 algo https://patchwork.kernel.org/patch/1040902/
    -applied patch for arm specific rwsem http://permalink.gmane.org/gmane.linux.ports.arm.kernel/92418
    -xz compression - based on this patch http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=7001/2
    -OC (max 1.5GHz, boot with 1GHz)
    -UV
    -2 new goveners (lionheart, smartassV2)
    -1 new scheduler (sio)

    ------------------------------------------------------------------------------------------------

    The "key" e.g. 201207112231 is the build id.

    Actually this is just the timestamp when the image has been created.
    When you report issues with a build please also provide this id

    You can also find this in

    Settings -> About -> Software Information -> More -> Kernel Version

    Just some notes on the govener and schedulers:
    Stock kernel is using govener ondemand and scheduler deadline
    To get more information about all of those see here
    http://xdaforums.com/showthread.php?t=1369817

    You can get the stock kernel sources from here
    http://www.htcdev.com/ (registration required)
    Or from here http://www.mediafire.com/?o0uudb56oxawvaw

    To create the KISS sources apply the patch supplied with each build

    Other Downloads:

    Note:
    If you download save or edit those scripts on a windows host make sure that
    you are not changing the line endings to be DOS "style" (CR/LF) since they will
    not work on your device.

    So before pushing them to the device check with e.g. notepad++ or any
    other windows editor that the line endings are UNIX "style" (LF)

    USB host scripts
    Contains helper scripts for USB host mode

    Flashable from recovery
    http://www.mediafire.com/?cj1buyxvwteiyqq

    Simply zip file
    http://www.mediafire.com/?ao391v55e3f4h7r

    getcpuinfo script
    Will print current settings like OC, UV and govener
    Also works with Titanium kernel
    http://www.mediafire.com/?emhetf9ctcb3l0g

    01vdd script
    For setting UV values
    Also works with Titanium kernel
    http://www.mediafire.com/?yj11n461vz23l4j

    02setcpu script
    Will set OC max 1.5GHz and govener smartassV2
    with battery "friendly" govener tweaks
    Also works with Titanium kernel
    http://www.mediafire.com/?i79wlhjomh9bhyf

    smartassV2-tune script
    Allow setting smartassV2 govener tweaks for battery or performance
    Call with argument "b" or "p"
    Also works with Titanium kernel
    http://www.mediafire.com/?e02s5ej5acacnaj

    Swap script
    Will enable 130m swap partition
    See here for details http://xdaforums.com/showpost.php?p=31441526&postcount=17
    http://www.mediafire.com/?i9xc4hnfheztgir
    8
    OP updated to latest build
    6
    Hi

    For those who are "tired" of using an app or scripts
    to set OC and/or VDD here is a "preset" version

    http://www.mediafire.com/?b5dlejx51lie9u7

    This is only for NON CM9 since with CM9 you have anyway
    a builtin app to set the frequencies on boot

    Its just a ramdisk change and will set right on boot (before android starts)
    min frequency: 245Hz
    max frequency: 1.5GHz
    and VDD to those well tested values:
    24576: 900
    61440: 900
    122880: 900
    184320: 900
    192000: 900
    245760: 900
    368640: 950
    768000: 1000
    806400: 1000
    1024000: 1100
    1200000: 1100
    1401600: 1175
    1497600: 1175

    You can of course still overwrite all those values as before
    with an app or a script later.

    Use it only if you have prooven and tested that your One V
    can handle those settings!


    Regards

    max
    6