I've been collecting some tweaks and scripts and seems to me it's now time to share it. While some values in terms of optimization might be different from device to device, I've found these pretty consistent throughout many.
I didn't tested all of them, and i don't assume any risk!!! Use them at you own risk!!!
Some useful tips on how to use them at the end of the post
This thread will be updated when new/better things come out
Superuser, Busybox install/update
1. Easily install Busybox (YOU NEED ROOT FIRST)
Code:
https://play.google.com/store/apps/details?id=com.jrummy.busybox.installer&feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5qcnVtbXkuYnVzeWJveC5pbnN0YWxsZXIiXQ..
2. UPDATE SuperUser (root app)
Code:
http://goo.im/superuser/
Build.prop
(edit your /system/build.prop with a file manager with root access)
Careful for already existing settings. In this case, just change the values.
1. Force launcher into memory
Code:
ro.HOME_APP_ADJ=1
2. Raise JPG quality to 100%
Code:
ro.media.enc.jpeg.quality=100
3. VM Heapsize; higher the RAM, higher the hp can be
Code:
dalvik.vm.heapsize=96m
4. Render UI with GPU
Code:
debug.sf.hw=1
5. Decrease dialing out delay
Code:
ro.telephony.call_ring.delay=0
6. Helps scrolling responsiveness
Code:
windowsmgr.max_events_per_sec=150
7. Save battery
Code:
wifi.supplicant_scan_interval=180
pm.sleep_mode=1
ro.ril.disable.power.collapse=0
8. Disable debugging notify icon on statusbar
Code:
persist.adb.notify=0
9. Increase overall touch responsiveness
Code:
debug.performance.tuning=1
video.accelerate.hw=1
10. Raise photo and video recording quality
Code:
ro.media.dec.jpeg.memcap=12000000
ro.media.enc.hprof.vid.bps=12000000
11. Signal (3G) tweaks
Code:
ro.ril.hsxpa=2
ro.ril.gprsclass=10
ro.ril.hep=1
ro.ril.enable.dtm=1
ro.ril.hsdpa.category=10
ro.ril.enable.a53=1
ro.ril.enable.3g.prefix=1
ro.ril.htcmaskw1.bitmask=4294967295
ro.ril.htcmaskw1=14449
ro.ril.hsupa.category=5
12. Net speed tweaks
Code:
net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.umts=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.edge=4096,87380,256960,4096,16384,256960
13. Disable blackscreen issue after a call
Code:
ro.lge.proximity.delay=25
mot.proximity.delay=25
14. Fix some application issues
Code:
ro.kernel.android.checkjni=0
15. Phone will not wake up from hitting the volume rocker
Code:
ro.config.hwfeature_wakeupkey=0
16. Force button lights on when screen is on
Code:
ro.mot.buttonlight.timeout=0
17. Disable boot animation for faster boot
Code:
debug.sf.nobootanimation=1
18. Miscellaneous flags
Code:
ro.config.hw_menu_unlockscreen=false
persist.sys.use_dithering=0
persist.sys.purgeable_assets=1
dalvik.vm.dexopt-flags=m=y
ro.mot.eri.losalert.delay=1000
19. Specifics to some LG devices
Code:
persist.service.pcsync.enable=0
persist.service.lgospd.enable=0
user.feature.flex=true
user.feature.lgdrm=false
user.feature.lgresource=false
user.feature.lgpoweroff=false
user.feature.ls_event=false
user.feature.ls_normal=false
user.feature.sui=false
Init.d
(needs ROM with init.d access and busybox, open empty file, insert header #!/system/bin/sh and put these there, save in /system/etc/init.d and name it something like 77tweaks)
1. strict minfree handler tweak
Code:
echo "2048,3072,6144,15360,17920,20480" > /sys/module/lowmemorykiller/parameters/minfree
2. internet speed tweaks
Code:
echo "0" > /proc/sys/net/ipv4/tcp_timestamps;
echo "1" > /proc/sys/net/ipv4/tcp_tw_reuse;
echo "1" > /proc/sys/net/ipv4/tcp_sack;
echo "1" > /proc/sys/net/ipv4/tcp_tw_recycle;
echo "1" > /proc/sys/net/ipv4/tcp_window_scaling;
echo "5" > /proc/sys/net/ipv4/tcp_keepalive_probes;
echo "30" > /proc/sys/net/ipv4/tcp_keepalive_intvl;
echo "30" > /proc/sys/net/ipv4/tcp_fin_timeout;
echo "404480" > /proc/sys/net/core/wmem_max;
echo "404480" > /proc/sys/net/core/rmem_max;
echo "256960" > /proc/sys/net/core/rmem_default;
echo "256960" > /proc/sys/net/core/wmem_default;
echo "4096,16384,404480" > /proc/sys/net/ipv4/tcp_wmem;
echo "4096,87380,404480" > /proc/sys/net/ipv4/tcp_rmem;
3. vm management tweaks
Code:
echo "4096" > /proc/sys/vm/min_free_kbytes
echo "0" > /proc/sys/vm/oom_kill_allocating_task;
echo "0" > /proc/sys/vm/panic_on_oom;
echo "0" > /proc/sys/vm/laptop_mode;
echo "0" > /proc/sys/vm/swappiness
echo "50" > /proc/sys/vm/vfs_cache_pressure
echo "90" > /proc/sys/vm/dirty_ratio
echo "70" > /proc/sys/vm/dirty_background_ratio
4. misc kernel tweaks
Code:
echo "8" > /proc/sys/vm/page-cluster;
echo "64000" > /proc/sys/kernel/msgmni;
echo "64000" > /proc/sys/kernel/msgmax;
echo "10" > /proc/sys/fs/lease-break-time;
echo "500,512000,64,2048" > /proc/sys/kernel/sem;
5. battery tweaks
Code:
echo "500" > /proc/sys/vm/dirty_expire_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_centisecs
6. EXT4 tweaks (greatly increase I/O)
(needs /system, /cache, /data partitions formatted to EXT4)
a) removes journalism
Code:
tune2fs -o journal_data_writeback /block/path/to/system
tune2fs -O ^has_journal /block/path/to/system
tune2fs -o journal_data_writeback /block/path/to/cache
tune2fs -O ^has_journal /block/path/to/cache
tune2fs -o journal_data_writeback /block/path/to/data
tune2fs -O ^has_journal /block/path/to/data
b) perfect mount options
Code:
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier=0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodiratime,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodiratime,barrier=0,nobh /cache
7. Flags blocks as non-rotational and increases cache size
Code:
LOOP=`ls -d /sys/block/loop*`;
RAM=`ls -d /sys/block/ram*`;
MMC=`ls -d /sys/block/mmc*`;
for j in $LOOP $RAM
do
echo "0" > $j/queue/rotational;
echo "2048" > $j/queue/read_ahead_kb;
done
8. microSD card speed tweak
Code:
echo "2048" > /sys/devices/virtual/bdi/179:0/read_ahead_kb;
9. Defrags database files
Code:
for i in \
`find /data -iname "*.db"`
do \
sqlite3 $i 'VACUUM;';
done
9. Remove logger
Code:
rm /dev/log/main
10. Ondemand governor tweaks
Code:
SAMPLING_RATE=$(busybox expr `cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency` \* 750 / 1000)
echo 95 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
echo $SAMPLING_RATE > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
11. Auto change governor and I/O Scheduler
a) I/O Scheduler (Best: MTD devices - VR; EMMC devices - SIO) - needs kernel with these
Code:
echo "vr" > /sys/block/mmcblk0/queue/scheduler
or
echo "sio" > /sys/block/mmcblk0/queue/scheduler
b) Governor (Best: Minmax > SavagedZen > Smoothass > Smartass > Interactive) - needs kernel with these
Code:
echo "governor-name-here" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
12. Auto-zipalign on boot
(needs zipalign bin)
Code:
[url]http://forum.xda-developers.com/showthread.php?t=860586[/url]
13. Loopy Smoothness tweak
Code:
[url]http://forum.xda-developers.com/showthread.php?t=1137554[/url]
[url]http://forum.xda-developers.com/showthread.php?t=1205744[/url]
14. Move dalvik-cache to cache partition (if it's big enough) to free up data partition space
Code:
CACHESIZE=$(df -k /cache | tail -n1 | tr -s ' ' | cut -d ' ' -f2)
if [ $CACHESIZE -gt 80000 ]
then
echo "Large cache detected, moving dalvik-cache to /cache"
if [ ! -d /cache/dalvik-cache ]
then
busybox rm -rf /cache/dalvik-cache /data/dalvik-cache
mkdir /cache/dalvik-cache /data/dalvik-cache
fi
busybox chown 1000:1000 /cache/dalvik-cache
busybox chmod 0771 /cache/dalvik-cache
# bind mount dalvik-cache so we can still boot without the sdcard
busybox mount -o bind /cache/dalvik-cache /data/dalvik-cache
busybox chown 1000:1000 /data/dalvik-cache
busybox chmod 0771 /data/dalvik-cache
else
echo "Small cache detected, dalvik-cache will remain on /data"
fi
15. Disable normalize sleeper
Code:
mount -t debugfs none /sys/kernel/debug
echo NO_NORMALIZED_SLEEPER > /sys/kernel/debug/sched_features
16. OOM groupings and priorities tweaks - SuperCharger
Code:
[url]http://forum.xda-developers.com/showthread.php?t=991276[/url]
GPS.conf
(create or edit your /system/etc/gps.conf with a file manager with root access)
For improving GPS lock time and signal.
a) European NTP server (replace for america or asia in your case)
Code:
NTP_SERVER=europe.pool.ntp.org
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
b) SE supl for A-GPS (better than Nokia's or Google's)
Code:
SUPL_HOST=supl.sonyericsson.com
SUPL_PORT=7275
Other tweaks or guidelines
1. Patch your hosts file for blocking Ads
(please think before doing this; many developers are supported through this way)
Code:
You can use AdFree application for this or changing manually your hosts file.
Here are some databases:
http://www.mvps.org/winhelp2002/hosts.txt
http://pgl.yoyo.org/adservers/serverlist.php?showintro=0;hostformat=hosts
2. Use CyanogenMOD's APN list file - it's one of the most complete.
Code:
It's located in /system/etc/apns-conf.xml
3. Use UOT kitchen for basic theming on your device.
Code:
http://uot.dakra.lt/
4. Use Google's dns servers
Code:
Create an empty file, name it resolv.conf and put there these 2 lines:
nameserver 8.8.8.8
nameserver 8.8.4.4
Save to /system/etc/.
5. Update Superuser and su binary to latest version (3.0 beta)
Code:
http://goo-inside.me/superuser/
6. Disable sync feature in sqlite
(author: ownhere - needs a source for your device so you can compile the /system/lib/libsqlite.so)
Code:
Patch file here: http://forum.xda-developers.com/showthread.php?t=903507
7. Do not use task killers.
sysctl_tweaks and sysctl.conf tweaks
added by krabappel2548 Thank him
To make them work:
1. make a new file in /system/etc/init.d, name it sysctl_tweaks
2. make a new file in /system/etc, name it sysctl.conf
3. Paste the right code in the right file
1. sysctl_tweaks
Code:
#!/system/bin/sh
# grep sysctl /etc/init.d/*
/etc/init.d/02vm:# Load /sys/etc/sysctl.conf
/etc/init.d/02vm:sysctl -p
2. sysctl.conf
Code:
#sysctl.conf file
############################
# Battery life tweaks #
############################
sysctl -w vm.dirty_writeback_centisecs=3000;
sysctl -w vm.dirty_expire_centisecs=500;
############################
# kernel tweaks #
############################
sysctl -w kernel.sched_features=15834233;
sysctl -w kernel.msgmni=1024;
sysctl -w kernel.msgmax=64000;
sysctl -w kernel.shmmax=268435456;
sysctl -w kernel.shmall=2097152;
sysctl -w kernel.sem="500 512000 100 2048";
sysctl -w kernel.hung_task_timeout_secs=0;
sysctl -w kernel.sched_latency_ns=18000000;
sysctl -w kernel.sched_compat_yield=1;
sysctl -w kernel.sched_shares_ratelimit=256000;
sysctl -w kernel.sched_child_runs_first=0;
sysctl -w kernel.threads-max=10000;
sysctl -w kernel.panic=30;
sysctl -w kernel.panic_on_oops=1;
sysctl -w kernel.sched_features=24189;
sysctl -w kernel.sched_min_granularity_ns=1500000;
sysctl -w kernel.sched_wakeup_granularity_ns=3000000;
############################
# CPU tweaks #
############################
# Queue size modifications
sysctl -w net.core.optmem_max=20480;
sysctl -w net.unix.max_dgram_qlen=50;
# Net Core Settings
# Location: /proc/sys/net/core
sysctl -w net.core.wmem_max=524288;
sysctl -w net.core.rmem_max=524288;
sysctl -w net.core.rmem_default=256960;
sysctl -w net.core.wmem_default=256960;
############################
# VM & Filesystem tweaks #
############################
sysctl -w fs.lease-break-time=10;
sysctl -w fs.file-max=65536;
sysctl -w vm.overcommit_memory=1;
sysctl -w vm.min_free_order_shift=4;
sysctl -w vm.block_dump=0;
sysctl -w vm.oom_dump_tasks=1;
sysctl -w vm.page-cluster=3;
############################
# Net Speed tweaks #
############################
# UnderUtilized Networking Tweaks below as recommended by avgjoemomma (from XDA)
sysctl -w net.ipv4.tcp_congestion_control=cubic;
# Hardening the TCP/IP stack to SYN attacks
sysctl -w net.ipv4.tcp_syncookies=1;
sysctl -w net.ipv4.conf.all.rp_filter=1;
sysctl -w net.ipv4.conf.default.rp_filter=1;
sysctl -w net.ipv4.tcp_synack_retries=2;
sysctl -w net.ipv4.tcp_syn_retries=2;
sysctl -w net.ipv4.tcp_max_syn_backlog=1024;
sysctl -w net.ipv4.tcp_max_tw_buckets=16384;
sysctl -w net.ipv4.icmp_echo_ignore_all=1;
sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1;
sysctl -w net.ipv4.tcp_no_metrics_save=1;
sysctl -w net.ipv4.tcp_fin_timeout=15;
sysctl -w net.ipv4.tcp_keepalive_time=1800;
sysctl -w net.ipv4.ip_forward=0;
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1;
sysctl -w net.ipv4.route.flush=1;
sysctl -w net.ipv4.udp_rmem_min=6144;
sysctl -w net.ipv4.udp_wmem_min=6144;
sysctl -w net.ipv4.tcp_rfc1337=1;
sysctl -w net.ipv4.ip_no_pmtu_disc=0;
sysctl -w net.ipv4.tcp_ecn=0;
sysctl -w net.ipv4.tcp_sack=1;
sysctl -w net.ipv4.tcp_fack=1;
# Don't accept source routing
sysctl -w net.ipv4.conf.default.accept_source_route=0 ;
sysctl -w net.ipv4.conf.all.accept_source_route=0;
# Don't accept redirects
sysctl -w net.ipv4.conf.all.accept_redirects=0;
sysctl -w net.ipv4.conf.default.accept_redirects=0;
sysctl -w net.ipv4.conf.all.secure_redirects=0;
sysctl -w net.ipv4.conf.default.secure_redirects=0;
This is another init.d tweak It's a battery calibration script
3. This is my battery calibration tweak
Code:
#!/system/bin/sh
# ========================================
# init.d script for KA Xperia SSpeed
# made by krabappel2548
# ========================================
SLEEP=120
if [ -e /data/.battery-calibrated ] ; then
exit 0
fi
(
while : ; do
LEVEL=$(cat /sys/class/power_supply/battery/capacity)
CUR=$(cat /sys/class/power_supply/battery/batt_current)
if [ "$LEVEL" == "100" ] && [ "$CUR" == "0" ] ; then
log -p i -t battery-calibration "*** LEVEL: $LEVEL CUR: $CUR***: calibrating..."
rm -f /data/system/batterystats.bin
touch /data/.battery-calibrated
exit 0
fi
# log -p i -t battery-calibration "*** LEVEL: $LEVEL CUR: $CUR ***: sleeping for $SLEEP s..."
sleep $SLEEP
done
) &
#Disable normalize sleeper
mount -t debugfs none /sys/kernel/debug
echo NO_NORMALIZED_SLEEPER > /sys/kernel/debug/sched_features
#battery tweaks (sleepers)
mount -t debugfs none /sys/kernel/debug
echo NO_NEW_FAIR_SLEEPERS > /sys/kernel/debug/sched_features;
echo NO_NORMALIZED_SLEEPERS > /sys/kernel/debug/sched_features;
umount /sys/kernel/debug
Tips Combined twaks and apps
Still testing better values to add!
1. incredibile fast browsing in zoomed pages with no shutters!
♦ VM Heapsize; higher the RAM, higher the hp can be
Code:
dalvik.vm.heapsize=96m
♦ Helps scrolling responsiveness
Code:
windowsmgr.max_events_per_sec=250
♦ Opera Mobile Browser
2. Faster internet speed
♦ Signal (3G) tweaks
Code:
ro.ril.hsxpa=2
ro.ril.gprsclass=10
ro.ril.hep=1
ro.ril.enable.dtm=1
ro.ril.hsdpa.category=10
ro.ril.enable.a53=1
ro.ril.enable.3g.prefix=1
ro.ril.htcmaskw1.bitmask=4294967295
ro.ril.htcmaskw1=14449
ro.ril.hsupa.category=5
♦ Net speed tweaks
Code:
net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.umts=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.edge=4096,87380,256960,4096,16384,256960
Alright, I think this is it for now.
If you have any other tweaks or better values, you can PM me and I'll include them
thanks to
kenzo
krabappel2548
thanks ve been waiting for this
Nice work been looking for some of these
Sent from my LT26i using xda premium
can i use it for xperia u?
10/40 said:
can i use it for xperia u?
Click to expand...
Click to collapse
Yes you can.
Sent from my LT26i using Tapatalk 2
gm007 said:
Yes you can.
Sent from my LT26i using Tapatalk 2
Click to expand...
Click to collapse
thx ...have to try it, soon
added Tweaks Combination to make it easier to understand for new people
nice job u done here very useful,
The Mods should make this thread sticky
May I put those scripts everywhere I can in build.prop ?
mpttrung said:
May I put those scripts everywhere I can in build.prop ?
Click to expand...
Click to collapse
nope add them at the end of the page and leave a free row between them to avoid problems
WebMuth said:
nope add them at the end of the page and leave a free row between them to avoid problems
Click to expand...
Click to collapse
ok, thanks ! lets me check it out
optik19918 said:
4. Render UI with GPU
Code:
debug.sf.hw=1
Click to expand...
Click to collapse
This one was already added by Sony in build.prop
optik19918 said:
7. Save battery
Code:
pm.sleep_mode=1
ro.ril.disable.power.collapse=0
Click to expand...
Click to collapse
I tested these a while ago and found them not effective. I even experienced less battery drain without these 2 lines
optik19918 said:
10. Raise photo and video recording quality
Code:
ro.media.dec.jpeg.memcap=8000000
Click to expand...
Click to collapse
I'm not sure if these help because we have 12mp camera and not 8.
optik19918 said:
b) SE supl for A-GPS (better than Nokia's or Google's)
Code:
SUPL_HOST=supl.sonyericsson.com
SUPL_PORT=7275
Click to expand...
Click to collapse
These are also already added by Sony
btw I'll post some more tweaks here later so you can add them to first post
krabappel2548 said:
This one was already added by Sony in build.prop
I tested these a while ago and found them not effective. I even experienced less battery drain without these 2 lines
I'm not sure if these help because we have 12mp camera and not 8.
These are also already added by Sony
btw I'll post some more tweaks here later so you can add them to first post
Click to expand...
Click to collapse
thanks for all i'l update when i go home now i'm at work!
some values are wrong becose i have those tweaks since the time of the x10
and i left the one already added by Sony in build.prop to make them easier to understand
Sent from my LT26i using xda premium
Here are some more tweaks Feel free to add them to the first post
To make them work:
1. make a new file in /system/etc/init.d, name it sysctl_tweaks
2. make a new file in /system/etc, name it sysctl.conf
3. Paste the right code in the right file
1. sysctl_tweaks
Code:
#!/system/bin/sh
# grep sysctl /etc/init.d/*
/etc/init.d/02vm:# Load /sys/etc/sysctl.conf
/etc/init.d/02vm:sysctl -p
2. sysctl.conf
Code:
#sysctl.conf file
############################
# Battery life tweaks #
############################
sysctl -w vm.dirty_writeback_centisecs=3000;
sysctl -w vm.dirty_expire_centisecs=500;
############################
# kernel tweaks #
############################
sysctl -w kernel.sched_features=15834233;
sysctl -w kernel.msgmni=1024;
sysctl -w kernel.msgmax=64000;
sysctl -w kernel.shmmax=268435456;
sysctl -w kernel.shmall=2097152;
sysctl -w kernel.sem="500 512000 100 2048";
sysctl -w kernel.hung_task_timeout_secs=0;
sysctl -w kernel.sched_latency_ns=18000000;
sysctl -w kernel.sched_compat_yield=1;
sysctl -w kernel.sched_shares_ratelimit=256000;
sysctl -w kernel.sched_child_runs_first=0;
sysctl -w kernel.threads-max=10000;
sysctl -w kernel.panic=30;
sysctl -w kernel.panic_on_oops=1;
sysctl -w kernel.sched_features=24189;
sysctl -w kernel.sched_min_granularity_ns=1500000;
sysctl -w kernel.sched_wakeup_granularity_ns=3000000;
############################
# CPU tweaks #
############################
# Queue size modifications
sysctl -w net.core.optmem_max=20480;
sysctl -w net.unix.max_dgram_qlen=50;
# Net Core Settings
# Location: /proc/sys/net/core
sysctl -w net.core.wmem_max=524288;
sysctl -w net.core.rmem_max=524288;
sysctl -w net.core.rmem_default=256960;
sysctl -w net.core.wmem_default=256960;
############################
# VM & Filesystem tweaks #
############################
sysctl -w fs.lease-break-time=10;
sysctl -w fs.file-max=65536;
sysctl -w vm.overcommit_memory=1;
sysctl -w vm.min_free_order_shift=4;
sysctl -w vm.block_dump=0;
sysctl -w vm.oom_dump_tasks=1;
sysctl -w vm.page-cluster=3;
############################
# Net Speed tweaks #
############################
# UnderUtilized Networking Tweaks below as recommended by avgjoemomma (from XDA)
sysctl -w net.ipv4.tcp_congestion_control=cubic;
# Hardening the TCP/IP stack to SYN attacks
sysctl -w net.ipv4.tcp_syncookies=1;
sysctl -w net.ipv4.conf.all.rp_filter=1;
sysctl -w net.ipv4.conf.default.rp_filter=1;
sysctl -w net.ipv4.tcp_synack_retries=2;
sysctl -w net.ipv4.tcp_syn_retries=2;
sysctl -w net.ipv4.tcp_max_syn_backlog=1024;
sysctl -w net.ipv4.tcp_max_tw_buckets=16384;
sysctl -w net.ipv4.icmp_echo_ignore_all=1;
sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1;
sysctl -w net.ipv4.tcp_no_metrics_save=1;
sysctl -w net.ipv4.tcp_fin_timeout=15;
sysctl -w net.ipv4.tcp_keepalive_time=1800;
sysctl -w net.ipv4.ip_forward=0;
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1;
sysctl -w net.ipv4.route.flush=1;
sysctl -w net.ipv4.udp_rmem_min=6144;
sysctl -w net.ipv4.udp_wmem_min=6144;
sysctl -w net.ipv4.tcp_rfc1337=1;
sysctl -w net.ipv4.ip_no_pmtu_disc=0;
sysctl -w net.ipv4.tcp_ecn=0;
sysctl -w net.ipv4.tcp_sack=1;
sysctl -w net.ipv4.tcp_fack=1;
# Don't accept source routing
sysctl -w net.ipv4.conf.default.accept_source_route=0 ;
sysctl -w net.ipv4.conf.all.accept_source_route=0;
# Don't accept redirects
sysctl -w net.ipv4.conf.all.accept_redirects=0;
sysctl -w net.ipv4.conf.default.accept_redirects=0;
sysctl -w net.ipv4.conf.all.secure_redirects=0;
sysctl -w net.ipv4.conf.default.secure_redirects=0;
This is another init.d tweak It's a battery calibration script
3. This is my battery calibration tweak
Code:
#!/system/bin/sh
# ========================================
# init.d script for KA Xperia SSpeed
# made by krabappel2548
# ========================================
SLEEP=120
if [ -e /data/.battery-calibrated ] ; then
exit 0
fi
(
while : ; do
LEVEL=$(cat /sys/class/power_supply/battery/capacity)
CUR=$(cat /sys/class/power_supply/battery/batt_current)
if [ "$LEVEL" == "100" ] && [ "$CUR" == "0" ] ; then
log -p i -t battery-calibration "*** LEVEL: $LEVEL CUR: $CUR***: calibrating..."
rm -f /data/system/batterystats.bin
touch /data/.battery-calibrated
exit 0
fi
# log -p i -t battery-calibration "*** LEVEL: $LEVEL CUR: $CUR ***: sleeping for $SLEEP s..."
sleep $SLEEP
done
) &
#Disable normalize sleeper
mount -t debugfs none /sys/kernel/debug
echo NO_NORMALIZED_SLEEPER > /sys/kernel/debug/sched_features
#battery tweaks (sleepers)
mount -t debugfs none /sys/kernel/debug
echo NO_NEW_FAIR_SLEEPERS > /sys/kernel/debug/sched_features;
echo NO_NORMALIZED_SLEEPERS > /sys/kernel/debug/sched_features;
umount /sys/kernel/debug
Big thanks for krabappel and optik!!
Sent from my Sony Xperia™ S
@krabappel2548: are the tweaks you posted already in your ka08 rom?
Apology11 said:
@krabappel2548: are the tweaks you posted already in your ka08 rom?
Click to expand...
Click to collapse
Yes
Sent from my LT26i using XDA
@Optik @Krabappel
i've just added all tweaks right now...bt i recognized my benchmark decreased it's now 6693 and it was 6900..im using doomkernel..maybe some tweaks or not compatible with it??
I added ro.mot.buttonlight.timeout=0 in the end of build.prop but it doesn't seem to have effect. Reboot didn't help either.
amfirbek92 said:
@Optik @Krabappel
i've just added all tweaks right now...bt i recognized my benchmark decreased it's now 6693 and it was 6900..im using doomkernel..maybe some tweaks or not compatible with it??
Click to expand...
Click to collapse
Stop looking at synthetic benchmark scores if your phone otherwise feels snappy.
mikbe said:
I added ro.mot.buttonlight.timeout=0 in the end of build.prop but it doesn't seem to have effect. Reboot didn't help either.
Stop looking at synthetic benchmark scores if your phone otherwise feels snappy.
Click to expand...
Click to collapse
Just removed ondemand governor tweak..everything seems very good now..and the benchmark is around 7400
Sent from my Sony Xperia™ S
Related
Does NOT work with aosp roms, sorry...
This is what i use in my rom and it works great. I have tried these script with a few other roms and the work with them too.
They make the roms snappy and very fast. Also give a boost in quandrant scores.
Some roms adjust some of the settings in these scripts too but i havent had ant errors with any roms i have tried. Please post if you have any issues with anything.
Devs feel free to add to your roms just leave the #smokin1337 in the scripts if ya dont mind.
Lowered the dalvik heap, will add more later ...
Just flash the zip in recovery to install
EDIT:
v1.1
Since a few people won't use this without basic info here it is:
This script will work with any 2.3.4 rom and afaik aosp or sense but i don't use aosp so i can't say for sure.
The scripts include:
Kernel tweaks
VM tweaks (swappiness, minfree, adj, etc.)
Optimized mounts
Cache Cleanup
SDCard read ahead to 3072
Dalvik Heap to 32 soon to be 48
SQLite Vacuum
tcp tweaks
IO scheduler set to deadline
Chmod User Log Files that go to HTC
Setprop Tweaks are:
VM Props
GUI Tweaks
Video/Pic enhancements
Disable HTC Checkin Service
LCD Density
Disable debug icon
Increase WiFi scan interval to 120 sec.
The Scripts
02sicktweaks
Code:
#!/system/bin/sh
#Sick Tweaks
#smokin1337
rm -f /cache/*.apk
rm -f /cache/*.tmp
rm -f /data/dalvik-cache/*.apk
rm -f /data/dalvik-cache/*.tmp
busybox rm -f /data/system/userbehavior.db
busybox chmod 400 /data/system/usagestats/
busybox chmod 400 /data/system/appusagestats/
busybox mount -o remount,rw,noatime,noauto_da_alloc,nodiratime,barrier=0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,nodev,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,nodev,barrier=0,nobh /cache
export sampling_rate=10000
export up_threshold=65
export READ_AHEAD_KB=3072
if [ -n ${up_threshold} ];
then echo ${up_threshold} > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold
fi
if [ -n ${sampling_rate} ];
then echo ${sampling_rate} > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
fi
if [ -e /sys/module/lowmemorykiller/parameters/adj ]; then
echo "0,1,2,4,7,15" > /sys/module/lowmemorykiller/parameters/adj
fi
if [ -e /sys/module/lowmemorykiller/parameters/minfree ]; then
echo "2560,4096,6144,12288,14336,18432" > /sys/module/lowmemorykiller/parameters/minfree
fi
if [ -e /sys/devices/virtual/bdi/179:0/read_ahead_kb ]; then
echo "3072" > /sys/devices/virtual/bdi/179:0/read_ahead_kb
fi
# Set io scheduler tweaks for mmc
echo "deadline" > /sys/block/mmcblk0/queue/scheduler
echo "0" > /sys/block/mmcblk0/queue/rotational
echo "2048" > /sys/block/mmcblk0/queue/nr_requests
echo ${READ_AHEAD_KB} > /sys/block/mmcblk0/queue/read_ahead_kb
echo "deadline" > /sys/block/mmcblk1/queue/scheduler
echo "0" > /sys/block/mmcblk1/queue/rotational
echo "2048" > /sys/block/mmcblk1/queue/nr_requests
echo ${READ_AHEAD_KB} > /sys/block/mmcblk1/queue/read_ahead_kb
for i in \ `find /data -iname "*.db"` do \ sqlite3
$i 'VACUUM;'
done
echo "6144 87380 524288" > /proc/sys/net/ipv4/tcp_wmem
echo "6144 87380 524288" > /proc/sys/net/ipv4/tcp_rmem
06sysctl
Code:
#!/system/bin/sh
#sysctl/setprop stuff
#smokin1337
sync
sysctl -w vm.oom_kill_allocating_task=0
sysctl -w fs.nr_open=1053696
sysctl -w fs.inotify.max_queued_events=32000
sysctl -w fs.inotify.max_user_instances=256
sysctl -w fs.inotify.max_user_watches=10240
sysctl -w fs.lease-break-time=10
sysctl -w fs.file-max=165164
sysctl -w vm.swappiness=0
sysctl -w vm.overcommit_memory=1
sysctl -w vm.page-cluster=3
sysctl -w vm.drop_caches=3
sysctl -w vm.min_free_kbytes=4096
sysctl -w vm.dirty_ratio=15
sysctl -w vm.dirty_background_ratio=4
sysctl -w vm.vfs_cache_pressure=10
sysctl -w vm.panic_on_oom=0
sysctl -w vm.dirty_expire_centisecs=200
sysctl -w vm.dirty_writeback_centisecs=500
sysctl -w kernel.sem=500,512000,64,2048
sysctl -w kernel.msgmax=64000
sysctl -w kernel.msgmni=64000
sysctl -w kernel.threads-max=525810
sysctl -w kernel.random.write_wakeup_threshold=256
sysctl -w kernel.random.read_wakeup_threshold=128
sysctl -w kernel.panic=5
sysctl -w kernel.shmall=16777216
sysctl -w kernel.shmmax=268435456
sysctl -w kernel.sched_latency_ns=10000000
sysctl -w kernel.sched_min_granularity_ns=2000000
sysctl -w kernel.sched_wakeup_granularity_ns=0
sysctl -w kernel.sched_compat_yield=1
sysctl -w net.ipv6.conf.default.use_tempaddr=2
sysctl -w net.ipv6.conf.all.use_tempaddr=2
sysctl -w net.ipv6.conf.all.temp_prefered_lft=3600
sysctl -w net.ipv6.conf.default.temp_prefered_lft=3600
setprop cm.filesystem.ready 1
setprop dc.filesystem.ready 1
setprop oxygen.filesystem.ready 1
setprop ro.telephony.call_ring.delay 0
setprop ring.delay 0
setprop windowsmgr.max_events_per_sec 150
setprop windowsmgr.support_rotation_270 true
setprop ro.HOME_APP_ADJ 1
setprop ro.HOME_APP_MEM 2048
setprop dalvik.vm.heapsize 48m
setprop dalvik.vm.stack-trace-file=/data/anr/traces.txt
setprop dalvik.vm.lockprof.threshold=500
setprop dalvik.vm.verify-bytecode=false
setprop dalvik.vm.jniopts=warnonly
setprop ro.ril.hsxpa=3
setprop ro.ril.hsdpa.category =28
setprop ro.ril.gprsclass=12
setprop ro.ril.hep=1
setprop ro.ril.enable.dtm=1
setprop ro.ril.enable.a53=1
setprop ro.ril.htcmaskw1.bitmask=4294967295
setprop ro.ril.htcmaskw1=14449
setprop ro.ril.hsupa.category=9
setprop ro.ril.def.agps.mode=2
setprop ro.ril.def.agps.feature=1
setprop ro.ril.enable.sdr=1
setprop ro.ril.enable.gea3=1
setprop ro.ril.enable.fd.plmn.prefix=23402,23410,23411
setprop ro.ril.disable.power.collapse=0
setprop ro.media.enc.jpeg.quality=100
setprop ro.media.dec.jpeg.memcap=8000000
setprop ro.media.enc.hprof.vid.bps=8000000
setprop pm.sleep_mode=1
setprop persist.adb.notify=0
setprop ro.config.htc.nocheckin=1
setprop ro.config.nocheckin=1
setprop wifi.supplicant_scan_interval=120
setprop ro.sf.lcd_density=240
Hope that helps...
V1.1 has more tweaks, so i'll leave the original in case you dont want the extra ones the ones in code above is from v1.1
Post some results here...
smokin1337 said:
This is what i use in my rom and it works great. I have tried these script with a few other roms and the work with them too.
They make the roms snappy and very fast. Also give a boost in quandrant scores.
Some roms adjust some of the settings in these scripts too but i havent had ant errors with any roms i have tried. Please post if you have any issues with anything.
Devs feel free to add to your roms just leave the #smokin1337 in the scripts if ya dont mind.
Just flash the zip in recovery to install
Post some results here...
Click to expand...
Click to collapse
Thank you sir!
hTc Evo [3D]
What exactly does this script do? this is like giving me a pill and just telling me it will cure cancer with no explanation
Thaxx said:
What exactly does this script do? this is like giving me a pill and just telling me it will cure cancer with no explanation
Click to expand...
Click to collapse
If you open the zip and read the scripts you'd see.
It basically changes a bunch of settings on your phone, dalvik heap to 72mb for example, readahead speed increase on the sdcard, a bunch of other stuff.
This is safe for sense and aosp roms?
Sent from my PG06100 using Tapatalk
It's basically all the speed tweaks out and some i found doing some research. It changes quite a few things as the previous poster said check out the scripts and see what they do, which is good practice to do all the time. I edited the values for speed on my rom but it should work with any existing rom.
stinkdified said:
This is safe for sense and aosp roms?
Sent from my PG06100 using Tapatalk
Click to expand...
Click to collapse
Should be its all android system edits.
A dalvik of 72 is a terrible, terrible idea, man. (No offense, I'm sure you put a lot of work into this script)
LiquidSolstice said:
A dalvik of 72 is a terrible, terrible idea, man. (No offense, I'm sure you put a lot of work into this script)
Click to expand...
Click to collapse
Whats a good setting ? Seemed ok to me i read some that said higher is better and some said lower is better. Neither seemed to make much difference so i left it high.
smokin1337 said:
Whats a good setting ? Seemed ok to me i read some that said higher is better and some said lower is better. Neither seemed to make much difference so i left it high.
Click to expand...
Click to collapse
It'll be smooth for a while, but the problem with that is that it will take way too long for the garbage collector to come and clean up after the process. There's a better way of explaining it, unfortunately, I'm not sure how to.
smokin1337 said:
It's basically all the speed tweaks out and some i found doing some research. It changes quite a few things as the previous poster said check out the scripts and see what they do, which is good practice to do all the time..
Click to expand...
Click to collapse
how to "check out the scripts and see what they do"?
directions say to just flash it
theres no written explanation of all the tweaks somewhere?
Going to try this now, Thanks bro
SayWhat10 said:
how to "check out the scripts and see what they do"?
directions say to just flash it
theres no written explanation of all the tweaks somewhere?
Click to expand...
Click to collapse
Nah not really i looked them up on google, i adjusted them back and forth to see what helped and what didn't. I'm gonna lower the dalvik heap with the advice of liquid solstice to 32 just to be safe.
Good stuff man, will report back with results.
Thx..
Sent from my PG86100 using xda premium
question smokin what does this do?
busybox mount -o remount,rw,noatime,noauto_da_alloc,nodiratime,barrier=0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,nodev,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,nodev,barrier=0,nobh /cache
i sort of get it but not really
smokin1337 said:
Nah not really i looked them up on google, i adjusted them back and forth to see what helped and what didn't. I'm gonna lower the dalvik heap with the advice of liquid solstice to 32 just to be safe.
Click to expand...
Click to collapse
I would do 64M, gives everything enough room to breathe and it's sort of the 'standard', I guess. Amything more is no bueno as LS pointed out and anything less is limiting our phones. Just my thoughts.
empiire said:
I would do 64M, gives everything enough room to breathe and it's sort of the 'standard', I guess. Amything more is no bueno as LS pointed out and anything less is limiting our phones. Just my thoughts.
Click to expand...
Click to collapse
i thinks 32 is best HTC Put it there for a reason
SayWhat10 said:
how to "check out the scripts and see what they do"?
directions say to just flash it
theres no written explanation of all the tweaks somewhere?
Click to expand...
Click to collapse
I'm sure you can.extract the zip file and inside you'll find text files with the tweaks or such.
Sent from my PG86100 using Tapatalk
Hmmmm....curious...
#SWAG!!!
@ dalvik tweaks
I see a lot of different settings people either go with 32 or 64. On my ROMS I run 48 and am happy with that. I may give 64 a go and see what it does.
@OP - Good job!
smokin1337 said:
Whats a good setting ? Seemed ok to me i read some that said higher is better and some said lower is better. Neither seemed to make much difference so i left it high.
Click to expand...
Click to collapse
The best setting is about 48MB. If it is too big then it takes a long time for the garbage collector to do its thing and the cache can grow to really large levels after you have been running the phone for a while. 48 is a good balance because it allows more space to be used for apps, but isnt so large that the cache's grow crazy big.
{
"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 had posted my Supremacy script in the android developments for XS and XU. Tho it will work on P, Go etc.
Decided to have one thread for all. Here: http://forum.xda-developers.com/showthread.php?t=1928200
——————————————————————————————————————————————————————————
Don't know what it is? Read up the thread! ^^
——————————————————————————————————————————————————————————
Here, I will answer your questions and/or anything else.
Are you working to v3?
Nebunia lu Salam
oache said:
Are you working to v3?
Nebunia lu Salam
Click to expand...
Click to collapse
V3 is out
Tapatalked Xperia S
Mmm... Init.d , will it work in locked rooted stock rom?
LiveSquare said:
Mmm... Init.d , will it work in locked rooted stock rom?
Click to expand...
Click to collapse
The kernel needs init.d support. Check XU dev section there is a thread on how to enable it
Tapatalked !
Rapier07 said:
The kernel needs init.d support. Check XU dev section there is a thread on how to enable it
Tapatalked !
Click to expand...
Click to collapse
You mean enable on stock Kernel?
EDIT: Found and will try. Thanks.
EDIT2: How to test whether it's working?
Sadly this script causes freezes and reboots at random. Tested with KA and AS kernels. Haven't tried v3 but doubt it will make a difference. It's a shame
Skickat från min LT26i via Tapatalk 2
Galaxen said:
Sadly this script causes freezes and reboots at random. Tested with KA and AS kernels. Haven't tried v3 but doubt it will make a difference. It's a shame
Skickat från min LT26i via Tapatalk 2
Click to expand...
Click to collapse
I have no issues on xsspeed kernel V7 and 2.50 firmware
Tapatalked Xperia S
Ben36 said:
I have no issues on xsspeed kernel V7 and 2.50 firmware
Tapatalked Xperia S
Click to expand...
Click to collapse
Im still running .45 so it could be that.
Galaxen said:
Sadly this script causes freezes and reboots at random. Tested with KA and AS kernels. Haven't tried v3 but doubt it will make a difference. It's a shame
Skickat från min LT26i via Tapatalk 2
Click to expand...
Click to collapse
Reboots? Check the kernel Changelog or something, if it includes tweaks such as cache clearingg etc. those might have been conflicting this these scripts
sorry to say it...the script is a lil bit messy. the sysctl.conf is written in wrong way and the command isn't consistent.
Written wrong you say? Well you must be right. I don't know a lot here. Maybe you could helpme out?
emwno said:
Written wrong you say? Well you must be right. I don't know a lot here. Maybe you could helpme out?
Click to expand...
Click to collapse
It works well for me. The device is snappier.
Tapatalked !
kurotsugi said:
sorry to say it...the script is a lil bit messy. the sysctl.conf is written in wrong way and the command isn't consistent.
Click to expand...
Click to collapse
Yes do help and explain
Tapatalked Xperia S
Yup the device became snappier bt there is a decrease in quadrant score
Earlier I used to get above 3000 bt nw I can't go beyond 2900
Still I liked it coz this script actually makes a difference
if you have time, you can rewrite all the stuff by yourself to avoid double typed script with different value. its easy but need a lil more patience. I'll try to give quick explanation. our tweaks mostly work via init.d script. the basic structure will be.
Code:
#!/system/bin/sh --> the header. tell the system to use "sh" command on the script below
echo bla bla bla. --> the script
I'll differentiate the scripts into two parts. the one run a bash script and the one used to change our device setting. the first one is quite complicated and usually written on separated file. the famous one might be zipalign script and sqlite script. basicly you only need to add the script and the required files (the libs and the binary file in /system/bin) into your system and need no modification. just add and leave it.
the second part is the one used to change our device setting. we can differentiate this stuff into two things. the setprop stuff and the "other stuff". the setprop stuff is quite easy to use. the setprop stuff basic form is "setprop <key> <value>" for an example:
Code:
setprop ro.ril.enable.dtm 1
setprop ro.ril.gprsclass 10
setprop ro.ril.hep 1
setprop ro.ril.enable.3g.prefix 1
setprop ro.ril.hsdpa.category 8
setprop ro.ril.hsupa.category 6
setprop ro.ril.hsxpa 2
setprop ro.ril.enable.a53 1
some of these script written in form of "setprop ro.ril.hep=1". that's the wrong way. the correct way is as I've described above.
the second part, the "other stuff" work in three different way. for an example, look at these files
Code:
/proc/sys/kernel/shmmni
/proc/sys/kernel/shmmax
/proc/sys/kernel/shmall
these files have certain value on it. if we want to change the value written on it, we can use three different way.
1. use "sysctl -w <key>=<value>" form. in your init.d script you'll type
Code:
sysctl -w kernel.shmmni=4096
sysctl -w kernel.shmmax=268435456
sysctl -w kernel.shmall=2097152
2. use sysctl.conf file. in your sysctl.conf file, you'll write
Code:
kernel.shmmni=4096
kernel.shmmax=268435456
kernel.shmall=2097152
while in your init.d script you'll write "sysctl -p".
personally I prefer the number 1 since I can made a simple test to check whether if the script is running or not and add it into my log files. anyway, these trick only work for the files under /proc/sys. if you want to change the value of different files, you'll need to use method number 3.
3. use echo command. the form is "echo "<value>" > /path/to/file". in your init.d you'll write
Code:
echo "0" > /sys/module/lowmemorykiller/parameters/debug_level
echo "64" > /sys/module/lowmemorykiller/parameters/cost
echo "0,1,3,5,7,15" > /sys/module/lowmemorykiller/parameters/adj
echo "4096,5182,6400,15360,17920,20480" > /sys/module/lowmemorykiller/parameters/minfree
to avoid double typed script, we can categorize our tweak into several group. I'll show you my tweak as an example. you can learn it or start with it. I don't take credits, so that you can modify it anytime without asking my permission.
Code:
#!/system/bin/sh
# kuro tweak1: the echo stuff
# [email protected] (2012) - lol...i'm just joking. no copyright or whatsoever
# contact : [email protected]
# v.1 - first release
# v.1.1 - new log system and new tweak added.
# v.1.2 - new tweak for xperia
# v.1.3(4-11-12) - new form
LOG_FILE=/data/kuro_tweak1.log
LOG_FILEZ=/data/kuro_sqlite.log
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
if [ -e $LOG_FILEZ ]; then
rm $LOG_FILEZ;
fi;
# the preface
echo "==========================
# TWEAK KURO1-LOG FILE #
==========================
in the name of Allah,
the most beneficent,
the most mercifull
==========================
system information:
vendor : $( getprop ro.product.brand )
model : $( getprop ro.product.model )
ROM : $( getprop ro.build.display.id )
running the script...
start at:
$( date +"%m-%d-%Y %H:%M:%S" )
==========================" | tee -a $LOG_FILE;
# perfect mount
mount -o remount,noatime,commit=500,noauto_da_alloc,barrier=0 /system /system;
mount -o remount,noatime,commit=500,noauto_da_alloc,barrier=0 /data /data;
mount -o remount,noatime,commit=500,noauto_da_alloc,barrier=0 /cache /cache;
echo "perfect mount---------[OK]" | tee -a $LOG_FILE;
# sdcard speed fix
# not working yet - need root permission to change these value
if [ -e /sys/devices/virtual/bdi/179:0/read_ahead_kb ]; then
busybox echo "2048" > /sys/devices/virtual/bdi/179:0/read_ahead_kb
busybox echo "2048" > /sys/devices/virtual/bdi/179:32/read_ahead_kb
echo "sdcard speed fix------[OK]
-value set to $( cat /sys/devices/virtual/bdi/179:0/read_ahead_kb )
-value set to $( cat /sys/devices/virtual/bdi/179:32/read_ahead_kb )" | tee -a $LOG_FILE; else
echo "sdcard speed fix----[FAIL]" | tee -a $LOG_FILE;
fi
# kernel kick
sysctl -w kernel.shmmni=4096
sysctl -w kernel.shmmax=268435456
sysctl -w kernel.shmall=2097152
sysctl -w kernel.msgmni=4096
sysctl -w kernel.msgmax=64000
# sysctl -w kernel.sched_latency_ns=20000000
# sysctl -w kernel.sched_wakeup_granularity_ns=2500000
# sysctl -w kernel.sched_min_granularity_ns=10000000
sysctl -w kernel.sem="500 512000 64 2048"
sysctl -w kernel.panic=30
sysctl -w kernel.panic_on_oops=0
sysctl -w kernel.threads-max=10000
sysctl -w kernel.panic=30
# sysctl -w kernel.sched_compat_yield=1
# sysctl -w kernel.sched_shares_ratelimit=256000
sysctl -w kernel.ctrl-alt-del=0
sysctl -w fs.lease-break-time=10
sysctl -w fs.file-max=65536
echo "kernel kick-----------[OK]" | tee -a $LOG_FILE;
# OOM
sysctl -w vm.laptop_mode=0
sysctl -w vm.swappiness=40
sysctl -w vm.dirty_writeback_centisecs=3000
sysctl -w vm.dirty_expire_centisecs=500
sysctl -w vm.dirty_ratio=15
sysctl -w vm.dirty_background_ratio=10
sysctl -w vm.lowmem_reserve_ratio="100 100"
sysctl -w vm.overcommit_ratio=70
sysctl -w vm.highmem_is_dirtyable=1
sysctl -w vm.min_free_order_shift=4
sysctl -w vm.oom_kill_allocating_task=0
sysctl -w vm.panic_on_oom=0
sysctl -w vm.page-cluster=3
sysctl -w vm.drop_caches=3
sysctl -w vm.min_free_kbytes=5120
sysctl -w vm.vfs_cache_pressure=50
sysctl -w vm.block_dump=0
echo "memory management-----[OK]" | tee -a $LOG_FILE;
# network boost
sysctl -w net.ipv4.tcp_congestion_control=cubic
sysctl -w net.ipv4.tcp_timestamps=0
sysctl -w net.ipv4.tcp_tw_reuse=1
sysctl -w net.ipv4.tcp_sack=1
sysctl -w net.ipv4.tcp_dsack=1
sysctl -w net.ipv4.tcp_tw_recycle=1
sysctl -w net.ipv4.tcp_window_scaling=1
sysctl -w net.ipv4.tcp_keepalive_probes=5
sysctl -w net.ipv4.tcp_keepalive_intvl=30
sysctl -w net.ipv4.tcp_fin_timeout=30
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1
sysctl -w net.ipv4.tcp_max_tw_buckets=1440000
sysctl -w net.ipv4.tcp_mem="57344 57344 524288"
sysctl -w net.ipv4.tcp_synack_retries=2
sysctl -w net.ipv4.tcp_syn_retries=2
sysctl -w net.ipv4.tcp_max_syn_backlog=1024
sysctl -w net.ipv4.icmp_echo_ignore_all=1
sysctl -w net.ipv4.route/flush=1
sysctl -w net.ipv4.udp_rmem_min=6144
sysctl -w net.ipv4.udp_wmem_min=6144
sysctl -w net.ipv4.tcp_rfc1337=1
sysctl -w net.ipv4.ip_no_pmtu_disc=0
sysctl -w net.ipv4.tcp_ecn=0
sysctl -w net.ipv4.tcp_wmem="6144 87380 524288"
sysctl -w net.ipv4.tcp_rmem="6144 87380 524288"
sysctl -w net.ipv4.tcp_fack=1
sysctl -w net.ipv4.tcp_synack_retries=2
sysctl -w net.ipv4.tcp_syn_retries=2
sysctl -w net.ipv4.tcp_no_metrics_save=1
sysctl -w net.ipv4.tcp_keepalive_time=1800
sysctl -w net.ipv4.ip_forward=0
sysctl -w net.ipv4.ip_dynaddr=0
sysctl -w net.ipv4.conf.all.accept_source_route=0
sysctl -w net.ipv4.conf.all.accept_redirects=0
sysctl -w net.ipv4.conf.all.rp_filter=1
sysctl -w net.ipv4.conf.all.secure_redirects=0
sysctl -w net.ipv4.conf.default.accept_redirects=0
sysctl -w net.ipv4.conf.default.secure_redirects=0
sysctl -w net.ipv4.conf.default.accept_source_route=0
sysctl -w net.core.rmem_max=524288
sysctl -w net.core.wmem_max=524288
sysctl -w net.core.rmem_default=262144
sysctl -w net.core.wmem_default=262144
sysctl -w net.core.optmem_max=20480
sysctl -w net.core.netdev_max_backlog=25000
sysctl -w net.unix.max_dgram_qlen=50
echo "network boost---------[OK]" | tee -a $LOG_FILE;
# cleaner
busybox rm -f /data/anr/*.*
busybox rm -f /data/cache/*.*
busybox rm -f /data/local/log/*.*
busybox rm -f /data/local/tmp/*.*
busybox rm -f /data/last_alog/*
busybox rm -f /data/last_kmsg/*
busybox rm -f /data/mlog/*
busybox rm -f /data/tombstones/*
busybox rm -f /data/system/dropbox/*
chmod 400 /data/system/dropbox
busybox rm /dev/log/main
busybox rm -f /data/system/usagestats/*
busybox chmod 400 /data/system/usagestats
export sampling_rate=10000
export up_threshold=80
echo "memory cleaner--------[OK]" | tee -a $LOG_FILE;
if [ -e /data/anr/*.* ]; then
echo "-anr not cleaned" | tee -a $LOG_FILE; else
echo "-anr cleaned" | tee -a $LOG_FILE
fi;
if [ -e /data/local/tmp/*.* ]; then
echo "-local/tmp not cleaned" | tee -a $LOG_FILE; else
echo "-local/tmp cleaned" | tee -a $LOG_FILE
fi;
if [ -e /data/cache/*.* ]; then
echo "-cache not cleaned" | tee -a $LOG_FILE; else
echo "-cache cleaned" | tee -a $LOG_FILE
fi;
if [ -e /data/last_log/*.* ]; then
echo "-log not cleaned" | tee -a $LOG_FILE; else
echo "-log cleaned" | tee -a $LOG_FILE
fi;
if [ -e /data/tombstones/*.* ]; then
echo "-tombstones not cleaned" | tee -a $LOG_FILE; else
echo "-tombstones cleaned" | tee -a $LOG_FILE
fi;
# minfree
echo "64" > /sys/module/lowmemorykiller/parameters/cost
echo "0,1,3,5,7,15" > /sys/module/lowmemorykiller/parameters/adj
echo "4096,5182,6400,15360,17920,20480" > /sys/module/lowmemorykiller/parameters/minfree
echo "minfree setting-------[OK]
-minfree value
$( cat /sys/module/lowmemorykiller/parameters/adj )
$( cat /sys/module/lowmemorykiller/parameters/minfree )" | tee -a $LOG_FILE;
# end
echo "==========================
done at:
$( date +"%m-%d-%Y %H:%M:%S" )
all praise is due to Allah
==========================
-- have a nice day --
[email protected]
==========================" | tee -a $LOG_FILE;
note that the line started with # are not executed.
Code:
#!/system/bin/sh
# kuro tweak2: the setprop stuffs and journalismoff
# [email protected] (2012) - lol...i'm just joking. no copyright or whatsoever
# contact : [email protected]
# v.1 - first release
# v.1.1 - new log system and new tweak added.
# v.1.2 - new tweak for xperia
LOG_FILE=/data/kuro_tweak2.log
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
# the preface
echo "==========================
# TWEAK KURO2-LOG FILE #
==========================
in the name of Allah,
the most beneficent,
the most mercifull
==========================
system information:
vendor : $( getprop ro.product.brand )
model : $( getprop ro.product.model )
ROM : $( getprop ro.build.display.id )
running the script...
start at:
$( date +"%m-%d-%Y %H:%M:%S" )
==========================" | tee -a $LOG_FILE;
# 3g mod
setprop ro.ril.enable.dtm 1
setprop ro.ril.gprsclass 10
setprop ro.ril.hep 1
setprop ro.ril.enable.3g.prefix 1
setprop ro.ril.hsdpa.category 8
setprop ro.ril.hsupa.category 6
setprop ro.ril.hsxpa 2
setprop ro.ril.enable.a53 1
setprop ro.ril.htcmaskw1.bitmask 4294967295
setprop ro.ril.htcmaskw1 14449
setprop ro.config.hw_fast_dormancy 1
echo "3g signal mod---------[OK]" | tee -a $LOG_FILE;
# battery mod n media
setprop debug.performance.tuning 1
setprop pm.sleep_mode 1
setprop windowsmgr.max_events_per_sec 90
setprop ro.ril.disable.power.collapse 0
setprop wifi.supplicant_scan_interval 180
setprop ro.media.enc.jpeg.quality 100
setprop debug.sf.hw 1
setprop ro.vold.umsdirtyratio 20
echo "battery n media-------[OK]" | tee -a $LOG_FILE;
# performance
# setprop persist.sys.purgeable_assets 1
setprop dalvik.vm.execution-mode int:jit
setprop dalvik.vm.dexopt-flags l=x,n=z,m=y
setprop dalvik.vm.verify-bytecode false
setprop dalvik.vm.heapsize 64m
setprop dalvik.vm.heapgrowthlimit 48m
setprop dalvik.vm.dexopt-data-only 1
setprop dalvik.vm.jmiopts forcecopy
setprop dalvik.vm.lockprof.treshold 250
setprop ro.kernel.android.checkjni 0
setprop ro.telephony.call_ring.delay 0
setprop debug.kill_allocating_task 1
# defaul is zero
# mem adj
setprop ro.FOREGROUND_APP_ADJ 0
setprop ro.VISIBLE_APP_ADJ 4
setprop ro.SECONDARY_SERVER_ADJ 6
setprop ro.HIDDEN_APP_MIN_ADJ 8
setprop ro.CONTENT_PROVIDER_ADJ 12
setprop ro.EMPTY_APP_ADJ 15
# mem minfree
setprop ro.FOREGROUND_APP_MEM 1536
setprop ro.VISIBLE_APP_MEM 2048
setprop ro.SECONDARY_SERVER_MEM 4096
setprop ro.HIDDEN_APP_MEM 5120
setprop ro.CONTENT_PROVIDER_MEM 5632
setprop ro.EMPTY_APP_MEM 6144
echo "performance-----------[OK]" | tee -a $LOG_FILE;
# Disable debugging notify icon on statusbar
setprop persist.adb.notify 0
# Disable blackscreen issue after a call
setprop ro.lge.proximity.delay 0
setprop mot.proximity.delay 0
# Phone will not wake up from hitting the volume rocker
# setprop ro.config.hwfeature_wakeupkey 0
# Enable display Dithering
# setprop persist.sys.use_dithering 1
# xperia mental
setprop persist.android.strictmode 0
setprop persist.sys.ui.hw 1
setprop ro.max.fling_velocity 12000
setprop ro.min.fling_velocity 2000
setprop ro.mot.eri.losalert.delay 1000
setprop ro.kernel.checkjni 0
setprop ro.config.nocheckin 1
setprop debug.qctwa.statusbar 1
setprop debug.qctwa.preservebuf 1
setprop debug.qc.hardware true
setprop com.qc.hardware true
setprop profiler.force_disable_err_rpt 1
setprop profiler.force_disable_ulog 1
setprop logcat.live disable
setprop net.ppp0.dns1 8.8.8.8
setprop net.ppp0.dns2 8.8.4.4
setprop net.dns1 8.8.8.8
setprop net.rmnet0.dns1 8.8.8.8
setprop net.rmnet0.dns2 8.8.4.4
setprop net.dns2 8.8.4.4
setprop debug.egl.profiler 1
setprop debug.egl.hw 1
setprop debug.composition.type gpu
echo "Xperia tweak----------[OK]" | tee -a $LOG_FILE;
# no journal
tune2fs -o journal_data_writeback /dev/block/mmcblk0p10
tune2fs -o journal_data_writeback /dev/block/mmcblk0p11
tune2fs -o journal_data_writeback /dev/block/mmcblk0p15
echo "no journal------------[OK]" | tee -a $LOG_FILE;
# end
echo "==========================
done at:
$( date +"%m-%d-%Y %H:%M:%S" )
all praise is due to Allah
==========================
-- have a nice day --
[email protected]
==========================" | tee -a $LOG_FILE;
the journalism stuff require tune2fs binary file installed into your system.
Code:
#!/system/bin/sh
#keep beats
PPID=$(pidof org.equalizerapp);
echo "17" > /proc/$PPID/oom_adj;
renice -18 $PPID;
#set
setprop.keep_app_1 org.equalizerapp
#audio resample
setprop af.resample 48000;
setprop af.resampler.quality 255;
setprop ro.audio.samplerate 48000;
setprop ro.audio.pcm.samplerate 48000;
setprop persyst.af.resample 48000;
setprop persyst.af.resampler.quality 255;
setprop persyst.ro.audio.samplerate 48000;
setprop persyst.ro.audio.pcm.samplerate 48000;
setprop persyst.dev.pm.dyn_samplingrate 1;
this one is modifying our sound quality. some of the part are still under my investigation but the audio resample part is really working.
Code:
#!/system/bin/sh
# DarkyROM 2011
# Much faster zipalign.
# Changelog:
# 1.3 (5/8/12) new log system. system remount deleted (by: kurotsugi)
# 1.2 (17/1/11) Added /data/zipalign.db file for faster apk check (ninpo,Bo$s)
# 1.1 (12/1/09) Switched to zipalign -c 4 to check the apk instead of MD5 (oknowton)
# 1.0 (11/30/09) Original
LOG_FILE=/data/kuro_zalign.log
ZIPALIGNDB=/data/kuro_zalign.db
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
if [ ! -f $ZIPALIGNDB ]; then
touch $ZIPALIGNDB;
fi;
# the preface
echo "==========================
# TWEAK KURO-ZALIGN FILE #
==========================
in the name of Allah,
the most beneficent,
the most mercifull
==========================
system information:
vendor : $( getprop ro.product.brand )
model : $( getprop ro.product.model )
ROM : $( getprop ro.build.display.id )
running the script...
start at:
$( date +"%m-%d-%Y %H:%M:%S" )
==========================" | tee -a $LOG_FILE;
# zipalign script (not modified)
for DIR in /system/app /data/app ; do
cd $DIR
for APK in *.apk ; do
if [ $APK -ot $ZIPALIGNDB ] && [ $(grep "$DIR/$APK" $ZIPALIGNDB|wc -l) -gt 0 ] ; then
echo "zipaligned: $DIR/$APK" | tee -a $LOG_FILE
else
zipalign -c 4 $APK
if [ $? -eq 0 ] ; then
echo "now zipaligned: $DIR/$APK" | tee -a $LOG_FILE
grep "$DIR/$APK" $ZIPALIGNDB > /dev/null || echo $DIR/$APK >> $ZIPALIGNDB
else
echo "Now aligning: $DIR/$APK" | tee -a $LOG_FILE
zipalign -f 4 $APK /cache/$APK
busybox mount -o rw,remount /system
cp -f -p /cache/$APK $APK
busybox rm -f /cache/$APK
grep "$DIR/$APK" $ZIPALIGNDB > /dev/null || echo $DIR/$APK >> $ZIPALIGNDB
fi
fi
done
done
touch $ZIPALIGNDB
# end
echo "==========================
done at:
$( date +"%m-%d-%Y %H:%M:%S" )
all praise is due to Allah
==========================
-- have a nice day --
[email protected]
==========================" | tee -a $LOG_FILE;
the famous zipalign script. i modify the log system. you need the zipalign binary to use it
Code:
#!/system/bin/sh
# kuro akuro: new data2sd method
# [email protected] (2012) - lol...i'm just joking. no copyright or whatsoever
# contact : [email protected]
# v.1 - first release
# v.1.1 - automated system, new build,
LOG_FILE=/data/kuro_akuro.log
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
# the preface
echo "==========================
# TWEAK AKURO-LOG FILE #
==========================
in the name of Allah,
the most beneficent,
the most mercifull
==========================
system information:
vendor : $( getprop ro.product.brand )
model : $( getprop ro.product.model )
ROM : $( getprop ro.build.display.id )
running the script...
start at:
$( date +"%m-%d-%Y %H:%M:%S" )
==========================" | tee -a $LOG_FILE;
# fix sdcard speed
if [ -e /sys/devices/virtual/bdi/179:0/read_ahead_kb ]; then
echo "2048" > /sys/devices/virtual/bdi/179:0/read_ahead_kb;
echo "fix sdcard speed tweak [OK]" | tee -a $LOG_FILE;
fi;
# create sdext dir in /system
if [ ! -e /system/sd ]; then
echo "WARNING!: no sdext dir
please create dir /system/sd" | tee -a $LOG_FILE;
fi;
echo "SDEXT directory check [OK]" | tee -a $LOG_FILE;
# mount sdcard all type
busybox mount -o noatime,nodiratime,nosuid,nodev /dev/block/mmcblk0p2 /system/sd;
mountext=`busybox mount | egrep 'ext2|ext3|ext4'`;
if [ -n "$mountext" ]; then
chown 1000:1000 /system/sd;
chmod 771 /system/sd;
fi;
echo "akuro: sd-ext mount [OK]" | tee -a $LOG_FILE;
# create the directories
if [ ! -e /system/sd/app ]; then
mkdir /system/sd/app;
busybox mv /data/app/* /system/sd/app;
fi;
if [ ! -e /system/sd/dalvik-cache ]; then
mkdir /system/sd/dalvik-cache;
busybox mv /data/dalvik-cache/* /system/sd/dalvik-cache;
fi;
echo "akuro: preparation step [OK]" | tee -a $LOG_FILE;
# mount sd to data directories
mount -o bind /system/sd/app /data/app;
chown 1000:1000 /system/sd/app;
chmod 771 /system/sd/app;
if [ -e /system/sd/app ]; then
echo "akuro: app mount step [OK]" | tee -a $LOG_FILE; else
echo "akuro: app mount step [FAIL]" | tee -a $LOG_FILE;
fi;
mount -o bind /system/sd/dalvik-cache /data/dalvik-cache;
chown 1000:1000 /system/sd/dalvik-cache;
chmod 771 /system/sd/dalvik-cache;
if [ -e /system/sd/dalvik-cache ]; then
echo "akuro: dalvik mount step [OK]" | tee -a $LOG_FILE; else
echo "akuro: dalvik mount step [FAIL]" | tee -a $LOG_FILE;
fi;
if [ -e /system/sd/data ]; then
mount -o bind /system/sd/data /data/data;
chown 1000:1000 /system/sd/data;
chmod 771 /system/sd/data;
fi;
if [ -e /system/sd/data ]; then
echo "akuro: data mount step [OK]" | tee -a $LOG_FILE; else
echo "akuro: data mount step [FAIL]" | tee -a $LOG_FILE;
fi;
# end
echo "==========================
done at:
$( date +"%m-%d-%Y %H:%M:%S" )
all praise is due to Allah
==========================
-- have a nice day --
[email protected]
==========================" | tee -a $LOG_FILE;
my own made akuro script. it works to move dalvik-cache,app, and /data/folder from our internal memory to ext2/3/4 partition on our sdcard. it will save our internal mem space. sadly this one is for samsung device. you need to modify some part of it.
have a nice tweaking
EDIT: btw, for my first and second tweak, you should use your own value. my value is taken from sgy and still under investigation to get better result.
Did not work for me using stock rom... It had gfx errors after flashing
Sent from my Xperia S using xda app-developers app
Gfx errors?
emwno said:
Gfx errors?
Click to expand...
Click to collapse
It showed the SIM menu on top of the launcher and after I entered settings this came back and then reboot. I will never apply this again.
Sent from my Xperia S using xda app-developers app
For those of you who like to do additional tweaks to your phone, what init.d and build.prop tweaks do you use? I've noticed some of them try to override crpalmer and Zarboz's kernel settings so I removed them. Also, I've read that some of these tweaks don't help at all.
So what tweaks do you recommend, if any, that play well with the DNA and with custom kernels?
Currently I have speedscript in my init.d folder but I noticed no benefit or detriment so I may just remove it. I also reduced the WiFi scan interval in the build.prop. I would like to add more tweaks since I can't leave well enough alone.
I'm looking for speed and battery improvements which can he a fine balancing act. I also want to increase the scroll speed as wel as change the autobrightness settings so it's more biased to lower brightness. I'm not sure if those could be achieved with init.d or build.prop tweaks.
#Render graphics with GPU&CPU
debug.composition.type=cpu
debug.composition.type=gpu
#For Faster Startups Disable Boot Animation
debug.sb.nobootanimation=1<<< faster
[QOUTE]Many build.prop tweaks set this value to 300, but it seems this is a bad idea. As Google points out, Android maxes out at 60fps. The default value is already allow for a possible max_events_per_sec of 90. Even if you allow for 300 max_events_per_sec, you’ll only ever see 60 of these events in any given second. Therefore, any value much higher than 90 is unlikely to have any noticeable impact on your experience in general. Additionally, setting this value too high can starve other UI events that need to get processed, viz. touch inputs. You’re not likely to feel like your device is running very smoothly when it is busy processing thousands of scroll events instead of responding immediately to you clicking to try and open a link or an app. There may be some specific scenarios where increasing this value does appear to improve system feedback, but changing this value for all UI events across the board will likely cause more problems than it will solve.[/QOUTE]
# faster Scrolling
ro.max.fling_velocity=12000
ro.min.fling_velocity=8000
# improve voice call clarity
ro.ril.enable.amr.wideband=1
# disable error checking
ro.kernel.android.checkjni=0
ro.kernel.checkjni=0
# faster youtube?
ro.ril.hep=0
# Faster boot
persist.sys.shutdown.mode=hibernate
# does not need to be on if not a dev
persist.android.strictmode=0
# disable USB debugging icon from status bar
persist.adb.notify=0
# Qualcomm display settings
debug.qctwa.statusbar=1
debug.qctwa.preservebuf=1
com.qc.hardware=true
# BATTERY SAVING-----------------
ro.ril.disable.power.collapse=1
ro.mot.eri.losalert.delay=1000 #smooths out network disconnects. breakes tethering in CM7.
ro.config.nocheckin=1 #disable sending usage data to google
# sleep modes
pm.sleep_mode=3<<< thats my personal mode used
#usage:
#pm.sleep_mode=0 -> collapse suspend
#pm.sleep_mode=1 -> collapse (will totally power off the cpu)
#pm.sleep_mode=2 -> sleep (cpu is still on, but put into low power mode (registers are still saved)
#pm.sleep_mode=3 -> slow Clock and Wait for Interrupt (lowered frequency and voltage)
#pm.sleep_mode=4 -> wait for interrupt (no change in cpu clock or voltage)
# locks launcher in memory (not recommended on low RAM devices)
#ro.HOME_APP_ADJ=1
check some of thoses out and maybe that will help in what your looking for
internet speed tweaks
Code:
echo "0" > /proc/sys/net/ipv4/tcp_timestamps;
echo "1" > /proc/sys/net/ipv4/tcp_tw_reuse;
echo "1" > /proc/sys/net/ipv4/tcp_sack;
echo "1" > /proc/sys/net/ipv4/tcp_tw_recycle;
echo "1" > /proc/sys/net/ipv4/tcp_window_scaling;
echo "5" > /proc/sys/net/ipv4/tcp_keepalive_probes;
echo "30" > /proc/sys/net/ipv4/tcp_keepalive_intvl;
echo "30" > /proc/sys/net/ipv4/tcp_fin_timeout;
echo "404480" > /proc/sys/net/core/wmem_max;
echo "404480" > /proc/sys/net/core/rmem_max;
echo "256960" > /proc/sys/net/core/rmem_default;
echo "256960" > /proc/sys/net/core/wmem_default;
echo "4096,16384,404480" > /proc/sys/net/ipv4/tcp_wmem;
echo "4096,87380,404480" > /proc/sys/net/ipv4/tcp_rmem;
vm management tweaks
Code:
echo "4096" > /proc/sys/vm/min_free_kbytes
echo "0" > /proc/sys/vm/oom_kill_allocating_task;
echo "0" > /proc/sys/vm/panic_on_oom;
echo "0" > /proc/sys/vm/laptop_mode;
echo "0" > /proc/sys/vm/swappiness
echo "50" > /proc/sys/vm/vfs_cache_pressure
echo "90" > /proc/sys/vm/dirty_ratio
echo "70" > /proc/sys/vm/dirty_background_ratio
misc kernel tweaks
Code:
echo "8" > /proc/sys/vm/page-cluster;
echo "64000" > /proc/sys/kernel/msgmni;
echo "64000" > /proc/sys/kernel/msgmax;
echo "10" > /proc/sys/fs/lease-break-time;
echo "500,512000,64,2048" > /proc/sys/kernel/sem;
5. battery tweaks
Code:
echo "500" > /proc/sys/vm/dirty_expire_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_centisecs
6. EXT4 tweaks (greatly increase I/O)
(needs /system, /cache, /data partitions formatted to EXT4)
removes journalism
Code:
tune2fs -o journal_data_writeback /block/path/to/system
tune2fs -O ^has_journal /block/path/to/system
tune2fs -o journal_data_writeback /block/path/to/cache
tune2fs -O ^has_journal /block/path/to/cache
tune2fs -o journal_data_writeback /block/path/to/data
tune2fs -O ^has_journal /block/path/to/data
b) perfect mount options
Code:
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier =0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /cache
Flags blocks as non-rotational and increases cache size
Code:
LOOP=`ls -d /sys/block/loop*`;
RAM=`ls -d /sys/block/ram*`;
MMC=`ls -d /sys/block/mmc*`;
for j in $LOOP $RAM
do
echo "0" > $j/queue/rotational;
echo "2048" > $j/queue/read_ahead_kb;
done
microSD card speed tweak
Code:
echo "2048" > /sys/devices/virtual/bdi/179:0/read_ahead_kb;
Defrags database files
Code:
for i in \
`find /data -iname "*.db"`
do \
sqlite3 $i 'VACUUM;';
done
Auto change governor and I/O Scheduler
a) I/O Scheduler (Best: MTD devices - VR; EMMC devices - SIO) - needs kernel with these
Code:
echo "vr" > /sys/block/mmcblk0/queue/scheduler
or
echo "sio" > /sys/block/mmcblk0/queue/scheduler
b) Governor (Best: Minmax > SavagedZen > Smoothass > Smartass > Interactive) - needs kernel with these
Code:
echo "governor-name-here" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
Move dalvik-cache to cache partition to free up data partition space <<< do this only if room is availble
Code:
CACHESIZE=$(df -k /cache | tail -n1 | tr -s ' ' | cut -d ' ' -f2)
if [ $CACHESIZE -gt 80000 ]
then
echo "Large cache detected, moving dalvik-cache to /cache"
if [ ! -d /cache/dalvik-cache ]
then
busybox rm -rf /cache/dalvik-cache /data/dalvik-cache
mkdir /cache/dalvik-cache /data/dalvik-cache
fi
busybox chown 1000:1000 /cache/dalvik-cache
busybox chmod 0771 /cache/dalvik-cache
# bind mount dalvik-cache so we can still boot without the sdcard
busybox mount -o bind /cache/dalvik-cache /data/dalvik-cache
busybox chown 1000:1000 /data/dalvik-cache
busybox chmod 0771 /data/dalvik-cache
else
echo "Small cache detected, dalvik-cache will remain on /data"
fi
Disable normalize sleeper
Code:
mount -t debugfs none /sys/kernel/debug
echo NO_NORMALIZED_SLEEPER > /sys/kernel/debug/sched_features
there does those 2 posts help you out orange
---------- Post added at 08:52 AM ---------- Previous post was at 08:51 AM ----------
also some of these are just examples so just modify for your needs cool?
---------- Post added at 08:54 AM ---------- Previous post was at 08:52 AM ----------
autobrightness you need to decompile framework-res.apk
Hi, I'm an hopeless but advanced user who is suffering from his f***ing S3 device.
No one was able to help me, as simply suggest to do thousands of tests, factory reset, turn to stock rom etc. etc. etc. ...
I haven't free time to dedicate to my device, I want to know the problems cause without time losing, so I thought to attach many logcat files related to happened issues.
I want a definitive help from advanced users, I won't to see bunch of enthusiasts who purpose the easiest ways.
Now I explain them with words: I've a very unstable device in performance terms, at random moments the I/O usage increase to high values causing slowdown, ANR and FCs due to "Input dispatching", rarely also forced reboots (probably system_server keep crashing).
RAM cleaning sometimes is resolutive as it kill many background services, but useless when system processes like mmcqd/0 and the already cited system_server are involved.
I never known the cause, but I know that my phone, with a ridiculous amount of free RAM (often 100-150 MB) and a large amount of installed apps, works greatful... until some f***ed mess happens.
I'm on latest CM 11 M releases (actually M10) with related Gapps and latest BOEFFLA NG Kernel (but its experimental status is not cause of issues, as I had the same situation with the stable kernel).
No OC (only the 5th gpu clock step on 533 Mhz by default), little UV (-25v for both cpu and gpu, the minimum tolerated by AnTuTu Benchmark), governor and scheduler respectively pegasusqplus and sio for both storages.
Then... the Xposed Framework enabled with GravityBox module (with few enabled functions, so might not be conflicts), build.prop and init.d edits, in summary related to have the JIT compiler enabled, gpu for display composition, better deep sleep, lower minfree values and VM optimization.
All the lines are thoughtful since almost an year and used by lot of users, I reported them below.
Build.prop
Code:
# Faster soft reboots #
persist.sys.purgeable_assets=1
# The better Deep Sleep mode #
ro.ril.sensor.sleep.control=1
pm.sleep_mode=1
# Better power saving #
power_supply.wakeup=enable
# Better Dalvik management #
dalvik.vm.checkjni=true
dalvik.vm.verify-bytecode=true
dalvik.vm.execution-mode=int:jit
dalvik.vm.dexopt-flags=m=y
# Enable FPS capping #
debug.gr.swapinterval=1
# Hardware acceleration for UI #
debug.composition.type=gpu
debug.sf.hw=1
persist.sys.ui.hw=1
# Hardware acceleration for videos #
video.accelerate.hw=1
# Performance improvements #
debug.performance.tuning=1
# Performance statistics in logcat #
debug.egl.hw=1
debug.egl.profiler=1
# Better OOM and LMK management #
ro.HOME_APP_MEM=2048
ro.FOREGROUND_APP_MEM=4096
ro.PERCEPTIBLE_APP_MEM=4096
ro.VISIBLE_APP_MEM=6144
ro.SECONDARY_SERVER_MEM=8192
ro.BACKUP_APP_MEM=8192
ro.HIDDEN_APP_MEM=10240
ro.HEAVY_WEIGHT_APP_MEM=10240
ro.CONTENT_PROVIDER_MEM=12228
ro.EMPTY_APP_MEM=14336
ro.HOME_APP_ADJ=1
ro.MIN_CRASH_INTERVAL=10
# Better upload speed #
ro.ril.hsxpa=3
# Better battery saving while losting telephony signal #
ro.mot.eri.losalert.delay=1000
# Enable IPv4 and IPv6 support #
persist.telephony.support.ipv4=1
persist.telephony.support.ipv6=1
# Better Wi-Fi bandwidth usage #
net.tcp.buffersize.wifi=524288,1048576,2097152,524288,1048576,2097152
# OpenDNS for all the networks #
net.dns1=208.67.222.222
net.dns2=208.67.220.220
net.gprs.dns1=208.67.222.222
net.gprs.dns2=208.67.220.220
net.ppp0.dns1=208.67.222.222
net.ppp0.dns2=208.67.220.220
net.rmnet0.dns1=208.67.222.222
net.rmnet0.dns2=208.67.220.220
net.wlan0.dns1=208.67.222.222
net.wlan0.dns2=208.67.220.220
net.secondary.dns=208.67.220.220
# Prevent blackscreen issues after calls #
mot.proximity.delay=25
ro.lge.proximity.delay=25
# Better scrolling #
ro.min_pointer_dur=8
ro.min.fling_velocity=8000
ro.max.fling_velocity=12000
# Call ringtone delay #
ro.telephony.call_ring.delay=500
# Better picture quality #
persist.sys.use_dithering=1
# Better speech quality #
ro.ril.enable.amr.wideband=1
# Better audio quality #
persist.af.resampler.quality=255
af.resampler.quality=255
# Better camera quality #
ro.media.enc.jpeg.quality=100
# Better camcorder #
ro.camcorder.videoModes=true
# Better camera flash #
ro.media.capture.flashIntensity=70
ro.media.capture.torchIntensity=70
# Faster video streaming #
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan =true
media.stagefright.enable-http=true
media.stagefright.enable-rtsp=true
Init.d script
Code:
## Filesystem trim for each partition ##
#!/system/bin/sh
fstrim -v /system
fstrim -v /data
fstrim -v /cache
## Ext4 filesystem instant mount ##
#!/system/bin/sh
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier=0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /cache
## Tweaks for better performance and battery saving ##
sysctl -p
sysctl -w vm.dirty_background_ratio=70;
sysctl -w vm.dirty_expire_centisecs=250;
sysctl -w vm.dirty_ratio=90;
sysctl -w vm.dirty_writeback_centisecs=1000;
sysctl -w vm.drop_caches=3;
sysctl -w vm.min_free_kbytes=8192;
sysctl -w vm.vfs_cache_pressure=10;
## Tweaks for better security ##
sysctl -w net.ipv4.tcp_syncookies=1;
sysctl -w net.ipv4.conf.all.rp_filter=1;
sysctl -w net.ipv4.conf.default.rp_filter=1;
sysctl -w net.ipv4.tcp_synack_retries=2;
sysctl -w net.ipv4.tcp_syn_retries=2;
sysctl -w net.ipv4.tcp_max_syn_backlog=1024;
sysctl -w net.ipv4.tcp_max_tw_buckets=16384;
sysctl -w net.ipv4.icmp_echo_ignore_all=1;
sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1;
sysctl -w net.ipv4.tcp_no_metrics_save=1;
sysctl -w net.ipv4.tcp_fin_timeout=15;
sysctl -w net.ipv4.tcp_keepalive_time=1800;
sysctl -w net.ipv4.ip_forward=0;
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1;
sysctl -w net.ipv4.route.flush=1;
sysctl -w net.ipv4.udp_rmem_min=6144;
sysctl -w net.ipv4.udp_wmem_min=6144;
sysctl -w net.ipv4.tcp_rfc1337=1;
sysctl -w net.ipv4.ip_no_pmtu_disc=0;
sysctl -w net.ipv4.tcp_ecn=0;
sysctl -w net.ipv4.tcp_sack=1;
sysctl -w net.ipv4.tcp_fack=1;
sysctl -w net.ipv4.conf.default.accept_source_route=0;
sysctl -w net.ipv4.conf.all.accept_source_route=0;
sysctl -w net.ipv4.conf.all.accept_redirects=0;
sysctl -w net.ipv4.conf.default.accept_redirects=0;
sysctl -w net.ipv4.conf.all.secure_redirects=0;
sysctl -w net.ipv4.conf.default.secure_redirects=0;
## Extended I/O scheduler queue ##
if [ -e /queue/nr_requests ]; then
echo 1024 > /queue/nr_requests; fi;
## Enable V-Sync ##
#!/system/bin/sh
mount -o remount,rw /sys /sys
busybox mount -t debugfs debugfs /sys/kernel/debug
busybox echo '1' > /sys/kernel/debug/msm_fb/0/vsync_enable
umount /sys/kernel/debug
## Fix apps permissions (by Einherjar Dev Team - www.edtdev.com) ##
logFile=/data/edt/logs/S30edt_perms.log
if [ -f $logFile ]; then
rm $logFile
fi
touch $logFile
mount -o rw,remount /dev/block/stl9 /system
echo "Setting permissions" >> $logFile
for file in /system/app/* /system/framework/* /data/app/*; do
echo " setting permissions (644) for $file" >> $logFile
chmod 644 $file
done
echo "chmodding init.d folder"
chmod 777 /system/etc/init.d
for file in /system/etc/init.d/*; do
echo " setting permissions (777) for $file" >> $logFile
chmod 777 $file
done
echo "Permissions set" >> $logFile
## Zipalign apps (by Wes Garner) ##
#!/system/bin/sh
LOG_FILE=/data/zipalign.log
CURRDATE=`date +%s`
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
echo "Starting Automatic ZipAlign $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
for apk in /data/app/*.apk ; do
zipalign -c 4 $apk;
ZIPCHECK=$?;
if [ $ZIPCHECK -eq 1 ]; then
echo ZipAligning $(basename $apk) | tee -a $LOG_FILE;
zipalign -f 4 $apk /cache/$(basename $apk);
if [ -e /cache/$(basename $apk) ]; then
cp -f -p /cache/$(basename $apk) $apk | tee -a $LOG_FILE;
rm /cache/$(basename $apk);
else
echo ZipAligning $(basename $apk) Failed | tee -a $LOG_FILE;
fi;
else
echo ZipAlign already completed on $apk | tee -a $LOG_FILE;
fi;
done;
echo "Automatic ZipAlign finished at $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
fi
## Optimization of all sqlite databases ##
if [ -d "/system" ]; then
for i in \ `find /system -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/dbdata" ]; then
for i in \ `find /dbdata -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/data" ]; then
for i in \ `find /data -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/datadata" ]; then
for i in \ `find /datadata -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
## Scheduled cron jobs - Copyright (C) 2010 Jared Rummler (JRummy16) GNUv3 License ##
#!/system/bin/sh
symlink_system_bin() {
# crond has "/bin/sh" hardcoded
if busybox [ ! -h /bin ]
then
mount -o remount,rw rootfs /
busybox ln -s /system/bin /bin
mount -o remount,ro rootfs /
fi
}
export_timezone() {
# set timezone (if you're not between -0500 and -0800 you get PST)
# todo - support other timezones
timezone=`date +%z`
if busybox [ $timezone = "-0800" ]; then
TZ=PST8PDT
elif busybox [ $timezone = "-0700" ]; then
TZ=MST7MDT
elif busybox [ $timezone = "-0600" ]; then
TZ=CST6CDT
elif busybox [ $timezone = "-0500" ]; then
TZ=EST5EDT
else
TZ=PST8PDT
fi
export TZ
}
set_crontab() {
# use /data/cron, call the crontab file "root"
if busybox [ -e /data/cron/root ]
then
mkdir -p /data/cron
cat > /data/cron/root
Thank you so much... may the best win!
I've to survive almost until Christmas.
I put a script in the folder,
/magisk/.core/service.d
but not working.
Code:
#!/system/bin/sh
# grep sysctl /etc/init.d/*
# Load /sys/etc/sysctl.conf
sysctl -p /system/etc/sysctl.conf
sysctl.conf
Code:
vm.panic_on_oom=0
kernel.panic_on_oops=0
kernel.panic=0
#fix
vm.swappiness=90
vm.swap_ratio_enable=1
Who can give me a hand? I have no idea about this problem.
Thanks.
neil78 said:
vm.swappiness=100
Click to expand...
Click to collapse
I guss this value has been locked, no way change it on boot.