Zitat[B]July 29, 2014
ZitatAlles anzeigen3.4.100 was released!
I also added a bunch of new optimizations. Total commit count added was 117 since my last release two days ago.
With this release I tried hard to optimize app loading/unloading. Hopefully all of these commits were not made in vain. (see changelog below)
I've set gpu to 450 MHz via init.d because I plan on having another look at the GPU OC to see if I can push it to 650 MHz shortly and I want to make sure it doesn't boot at that frequency though.
uber.oceighty.co has been updated to look better. Hopefully you like it! If anyone is good with php that could potentially help me add a download counter to it I'd really appreciate it. Add my on hangouts if you are interested in helping me make uber.oceighty.co even better!
LinksGoo.im is back! Everything will be uploaded there once again! For some reason the sorting is off so files are out of order. It might take you a second to find things for now. Hopefully they sort by name in the future.
http://goo.im/devs/Cl3Kener/HAMMERHEAD/KERNELS/UBER/
http://uber.oceighty.co/HAMMERHEAD/UBER/
Unfortunately, Dev Host is currently rejecting my ssh upload. This happens from time to time. Don't go there this week because you'll be disappointed! Hopefully it will work again next week!
Cheers!
Cl3Kener
Updated Features - July 28th, 2014
ZitatAlles anzeigen* Based upon Google's msm 3.4.y source for Hammerhead
* MultiROM Compatible (has Kexec patch)
* Latest 3.4.100 kernel version from Kernel.org
* Compatible with Stock as well as AOSP projects (CAF-based do not work sorry CM fans, CAF-kernel is just not as stable and battery friendly imao so I'll stay AOSP for now). If it doesn't work on a ROM let me know!!!
* CPU Governors added: Intellidemand, Intelliactive, Adaptive, Lionheart, AbyssplugV2, Ondemandplus, Badass, Wheatley, HYPER, Lazy, PegasusQ, Nightmare, DanceDance, Darkness, Optimax. and Uberdemand
* GPU Governors: Performance, Ondemand, and Interactive (Franco)
* IO Schedulers: Noop, Deadline, VR, SIO, ROW, CFQ, BFQ, FIOPS, FIFO, ZEN and Tripndroid
* Compiled with Custom Linaro 4.10.0/4.9.2 toolchains (Cl3Kener) (seehttps://github.com/Cl3Kener/)
* Compiled with Custom SaberMod 4.10.0-4.8.3 (sparksco and Team SaberMod)
* -OFast optimized with neon and graphite enhancements (Cl3Kener)
* Linaro compiler flags for greater optimization build wide (Cl3Kener)
* Snapdragon & CortexA15 optimizations (Tons of Contributors)
* Non-Stock Hotplug and Thermal regulator (from showp1984)
* Touch Boost - Showp1984 (comes with hotplug)
* GPU OverClock up to 533 MHz (200 MHz is default idle and it usually only goes to 533 MHz if running graphic extensive things) (Cl3Kener)
* Allow CPU OverClock up to 3.0 Ghz (Cl3Kener)
* Allow CPU UnderClock to 96Mhz (showp1984 implementation)
* L2 Cache OverClock (flar2)
* Ramdisk Edits on the fly for greater compatibility. (Strongly based on Showp1984 implement)
* Undervolting Control (Franco)
* LZ4 support implemented kernel wide - fastest compression/decompression available (decreases boot time by about 2-3 seconds) (Cl3Kener)
* Google Snappy Compression/Decompression support (just in case you want it)
* XZ Compression to latest 3.15.y (Cl3Kener)
* KSM (Kernel Samepage Merging)
* Frandom Support- Super Fast Random Number Generator to reduce lag (Implemented by default, if you have issues delete 00_frandom init.d file and rest assured kernel default is patched to 3.15.y)
* Faux Sound (Faux123) (or Franco as a second option)
* Sweep2Wake, Double Tap 2 Wake (Showp1984 with Faux123 verticle s2w support and flar2 dt2w enhancements)
* Powerkey suspend for S2W/DT2W (Flar2 version)
* Wake timeout for S2W/DT2W (Flar2)
* Dynamic and Asynchronous Fsync (Faux123)
* USB Fast Charge with many voltage options (Faux123)
* Gamma Control (Various Contributers)
* Color Control (savoca)
* Fstrim (reduces lag see more:http://man7.org/linux/man-pages/man8/fstrim.8.html)
* Backlight Dimmer (Flar2)
* ExFat Support (you'll need to load it via this init.d https://www.dropbox.com/s/tfm8k9vmskuhs4v/loadexfat) Updated to latest version (Neobuddy)
* Low Memory Killer - Many patches from Neobuddy
* Zram support upstreamed to 3.16.y branch (Cl3Kener)
* Zram supports lz4 compression now (kernel.org)
* Zcache, and Cleancache support updated to 3.14.y (Cl3Kener)
* BLX - Battery Life Extender (See here kernel.org) Ported by Ayysir to msm8974 devices
* F2FS file system support from Samsung
* Mount internal storage as CDROM (Frozen Cow)
* Advanced TCP Congestion Options (Veno as default, all 12 from kernel.org)
* Many patches to improve various parts of the kernel like multitasking or app loading (see source)
* Full Source including defconfig is available for you use/learn from. (Not a feature but I feel it is important that my source is complete so you can build directly from it if you want to learn and experiment)
[/B]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MANUALLY TUNE KERNEL (HOW TO MAKE INIT.D)
ZitatHere is a list of features you can enable or disable via Terminal Emulator or Init.d script. Make sure to type su into terminal first to elevate yourself to root first. When superuser request pops up select allow.
DYNAMIC FSYNC
ZitatAlles anzeigen
To enable - echo "1" > /sys/kernel/dyn_fsync/Dyn_fsync_active
To disable - echo "0" > /sys/kernel/dyn_fsync/Dyn_fsync_active
KSM (Kernel Samepage Merging)
To enable - echo "1" > /sys/kernel/mm/ksm/run
To disable - echo "0" > /sys/kernel/mm/ksm/run
USB FAST CHARGE
To enable - echo 1 > /sys/kernel/fast_charge/force_fast_charge
This makes USB to computer connections transfer current the same as the wall charger. (Classical version)Faux123 added the a ability to change currents to 500 900 1200 1500 2000.
To enable custom - echo 2 > /sys/kernel/fast_charge/force_fast_charge
Then
echo "1500" > /sys/kernel/fast_charge/fast_charge_level
change value 1500 to whatever you want (as long as it's one of those 5 values)
To disable - echo 0 > /sys/kernel/fast_charge/force_fast_charge
SET DEFAULT IO SCHEDULER
IO Acceptable values are bfq, cfq, deadline, fifo, fiops, noop, row, sio, vr, zen, tripndroid
echo "bfq" > /sys/block/mmcblk0/queue/scheduler
SET DEFAULT CPU GOVERNOR
Accetable values are adaptive, badass, intelliactive, dancedance, wheatley, smartasH3, abyssplugv2, lazy, pegasusq, nightmare, HYPER, ondemandplus, intellidemand, interactive, conservative, userspace, powersave, lionheart, ondemand, performance.
echo "1" > /sys/devices/system/cpu/cpu0/online;
echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu1/online;
echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu2/online;
echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu3/online;
echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor;
BACKLIGHT DIMMER
0 is disabled, 1 is enabled.
echo "0" > /sys/module/lm3630_bl/parameters/backlight_dimmer
TOUCH BOOST
(0 is disabled 1 is enabled)
echo "0" > /sys/kernel/msm_mpdecision/conf/boost_enabled
DOUBLE TAP TO WAKE
There are three options here:
0 is disabled
1 is normal dt2w (bottom half of screen)
2 is full screen dt2w
echo "0" > /sys/android_touch/doubletap2wake
SWEEP2WAKE/SWEEP2SLEEP
This one is tricky because there are two files to change. If you want both only run
echo "1" > /sys/android_touch/sweep2wake
If you only want sweep2sleep you'll have to run this as well.
echo "1" > /sys/android_touch/s2w_s2sonly
To disabled run both run these commands but with 0s instead.
PWRKEYSUSPEND (disables s2w, dt2w)
# 0 = disabled, 1 = enabled
echo "1" > /sys/module/qpnp_power_on/parameters/pwrkey_suspend
WAKE TIMEOUT OF S2W/DT2W
(# is in minutes not seconds)
echo "#" > /sys/android_touch/wake_timeout
GPU GOVERNOR
Acceptable values are "performance" "interactive" or "ondemand".
echo "ondemand" > /sys/class/kgsl/kgsl-3d0/pwrscale/trustzone/governor533333000-> 533 Mhz
487500000-> 487 Mhz
450000000-> 450 Mhz
389000000-> 389 Mhz
320000000-> 320 Mhz
200000000-> 200 Mhz
150000000-> 150 MhzSet Max GPU:
echo "320000000" > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/max_gpuclkSet Min GPU:
echo "150000000" > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/min_pwrlevel
ZRAM Settings
Turn on/off zram.
echo "1" /sys/devices/virtual/block/zram0/initstate
zram compression changer. lz4 or lzo and acceptable values
echo "lz4" > /sys/block/zram0/comp_algorithm
Ramdisk Size number should be # kb times 2048 default is about 185ish MB (10%) or 379464.
echo "379464" /sys/devices/virtual/block/zram0/size
LOAD EXFAT MODULE
insmod /system/lib/modules/exfat.ko
SET DEFAULT BOTTOM CLOCK SPEEDS
(If you want to set max change from scaling_min_freq to scaling_max_freq on bottom four) Acceptable values any of the clock speeds.
echo "96000" > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq
echo "96000" > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq
echo "96000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
VIBRATOR LEVEL
Stock Value is 63. Range of acceptable values is 0-100
echo "63" > /sys/class/timed_output/vibrator/amp
DIRTY RATIOS
dirty_background_ratio default is 10 (background meaning screen is off usually)
echo "20" > /proc/sys/vm/dirty_background_ratio
dirty_ratio default is 20.
echo "40" > /proc/sys/vm/dirty_ratio
FS DELAY WRITEBACKS MODE
# This command delays auto fs writebacks or file system bits cached in RAM while Screen is ON. Enable this feature for better performance. Note this adds a slight risk of possible data loss if you phone crashes while screen is on.
echo "1" > /proc/sys/vm/laptop_mode
DROP CACHES
Dropping caches will force rebuild of file system cache based on actual app usage rather than boot/startup processes. Use value of 3 for best file system read/write performance or you can try something in between. The drop_caches command valid values are:
# 0 default
# 1 free pagecache
# 2 free dentries, inodes
# 3 free pagecache, dentries, inodes
echo "0" > /proc/sys/vm/drop_caches
If you want to tweak Thermal or MSM_MPDecision go here with a root file browser.
Set MPDecision Values
Note: Only change these values after you've played with them in your favorite kernel tuning app. I recommend figuring out your settings then finding these files with a root browser then you can fill them out with your root browser of choice.
echo "1" > /sys/kernel/msm_mpdecision/conf/enabled
echo "0" > /sys/kernel/msm_mpdecision/conf/boost_enabled
echo "300000" > /sys/kernel/msm_mpdecision/conf/idle_freq
echo "4" > /sys/kernel/msm_mpdecision/conf/max_cpus
echo "1" > /sys/kernel/msm_mpdecision/conf/min_cpus
echo "12" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_0
echo "0" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_1
echo "25" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_2
echo "7" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_3
echo "30" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_4
echo "10" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_5
echo "0" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_6
echo "18" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_7
echo "1" > /sys/kernel/msm_mpdecision/conf/scroff_single_core
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_0
echo "0" > /sys/kernel/msm_mpdecision/conf/twts_threshold_1
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_2
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_3
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_4
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_5
echo "0" > /sys/kernel/msm_mpdecision/conf/twts_threshold_6
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_7
Set Thermal Values
Go to /sys/kernel/msm_thermal/conf/ in a root file browser and change the valuesI recommend that you figure out what you like and then create your own init.d script.
Here are a bunch of init.d scripts for you to look at as examples:https://www.dropbox.com/sh/88sqwe9q018pcne/xCzZBKAJTt