[Galaxy S III Q&A, Help & Troubleshooting] Simone98RC:
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

# 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

## 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.