[Galaxy Note 3 Android Development] HSD-Pilot:
I personally use Scripts to configure my CPU. They don't run in background and you can make them fit exactly to your Device.

Just an example:

#!/system/bin/sh

until [ `pidof com.android.systemui` != "" ]; do

sleep 1

done

sleep 20

#---------------------------------------------#

# Configure your CPU Values #

#---------------------------------------------#

#---------------------------------------------#

# Set CPU Scaling Governor

# intelliactive interactive conservative ondemand userspace powersave intellidemand

#---------------------------------------------#

GOVERNOR=intellidemand

#---------------------------------------------#

# Set I/O Scheduler

# noop deadline row cfq sio bfq fiops test-iosched zen

#---------------------------------------------#

SCHEDULER=fiops

#---------------------------------------------#

# Set SDCache

# 128 256 512 1024 2048 4096

#---------------------------------------------#

READ_AHEAD_KB=1024

#---------------------------------------------#

# Set MIN/MAX CPU Frequency

# 300000 422400 652800 729600 883200 960000 1036800 1190400 1267200 1497600 1574400 1728000 1958400 2265600 2457600

#---------------------------------------------#

MAX_OC_LIMIT=2265600

CPU_MIN=300000

CPU_MAX=2265600

#---------------------------------------------#

# Set CPU Boost

# 20 1497600 40 1728000

#---------------------------------------------#

BOOST_MS=15

INPUT_BOOST_FREQ=1267200

INPUT_BOOST_MS=35

SYNC_THRESHOLD=1574400

#---------------------------------------------#

# Set Intelliplug

# 0 0 3 4

#---------------------------------------------#

ACTIVATE_INTELLIPLUG=1

DUAL_CORE_MODE=0

NR_FSHIFT=3

NR_RUN_HYSTERESIS=4

#---------------------------------------------#

# Set Intelli Thermal

# N 85 5 1 75 85 75 5

#---------------------------------------------#

ACTIVATE_INTELLI_THERMAL=Y

CORE_LIMIT_TEMP=80

CORE_TEMP_HYSTERESIS=5

FREQ_STEP=1

LIMIT_TEMP=70

PSM_TEMP=80

PSM_TEMP_HYSTERESIS=70

TEMP_HYSTERESIS=5

#---------------------------------------------#

# Configure your GPU Values #

#---------------------------------------------#

#---------------------------------------------#

# Set GPU Scaling Governor

# cpubw_hwmon msm_cpufreq msm-adreno-tz userspace powersave performance simple_ondemand

#---------------------------------------------#

GPU_GOVERNOR=simple_ondemand

#---------------------------------------------#

# Set MIN/MAX GPU Frequency

# 450000000 389000000 320000000 200000000

#---------------------------------------------#

GPU_MIN=200000000

GPU_MAX=450000000

#---------------------------------------------#

#---------------------------------------------#

# Apply CPU Configuration #

#---------------------------------------------#

cpu=/sys/devices/system/cpu/cpu*

gpu=/sys/class/kgsl/kgsl-3d0/devfreq

mmc=/sys/block/mmc*

sdcard=/sys/devices/virtual/bdi/179:*

module=sys/module

#---------------------------------------------#

echo " "

echo ">>> CPU"

#---------------------------------------------#

#Set CPU Governor

#---------------------------------------------#

for a in $cpu; do

if [ -e ${a}/cpufreq/scaling_governor ]; then

echo $GOVERNOR >> ${a}/cpufreq/scaling_governor

echo "CPU Governor > $(cat ${a}/cpufreq/scaling_governor) / $GOVERNOR"; fi

done

#---------------------------------------------#

# Set I/O Scheduler

#---------------------------------------------#

for a in $mmc; do

if [ -e ${a}/queue ]; then

echo $SCHEDULER >> ${a}/queue/scheduler

echo "I/O SCHEDULER > $(cat ${a}/queue/scheduler) / $SCHEDULER"; fi

done

#---------------------------------------------#

# I/O related tweaks

#---------------------------------------------#

dm=/sys/block/dm-*

loop=/sys/block/loop*

mmc=/sys/block/mmc*

ram=/sys/block/ram*

# Optimize non-rotating storage;

for i in $dm $loop $mmc $ram; do

if [ -e $i/queue/rotational ];

then

echo "0" > $i/queue/rotational;

fi;

if [ -e $i/queue/nr_requests ];

then

echo "4096" > $i/queue/nr_requests;

fi;

#CFQ specific

if [ -e $i/queue/iosched/back_seek_penalty ];

then

echo "1" > $i/queue/iosched/back_seek_penalty;

fi;

if [ -e $i/queue/iosched/low_latency ];

then

echo "1" > $i/queue/iosched/low_latency;

fi;

if [ -e $i/queue/iosched/slice_idle ];

then

echo "1" > $i/queue/iosched/slice_idle;

fi;

if [ -e $i/queue/iosched/quantum ];

then

echo "8" > $i/queue/iosched/quantum;

fi;

# Deadline/VR/SIO specific

if [ -e $i/queue/iosched/fifo_batch ];

then

echo "4" > $i/queue/iosched/fifo_batch;

fi;

if [ -e $i/queue/iosched/writes_starved ];

then

echo "1" > $i/queue/iosched/writes_starved;

fi;

#VR Specific

if [ -e $i/queue/iosched/rev_penalty ];

then

echo "1" > $i/queue/iosched/rev_penalty;

fi;

if [ -e $i/queue/rq_affinity ];

then

echo "1" > $i/queue/rq_affinity;

fi;

#Disable iostats to reduce overhead

if [ -e $i/queue/iostats ];

then

echo "0" > $i/queue/iostats;

fi;

# Optimize for readahead;

if [ -e $i/queue/read_ahead_kb ];

then

echo "256" > $i/queue/read_ahead_kb;

fi;

done;

# Specifically for NAND devices where reads are faster than writes, writes starved 2:1 is good

for i in $dm $loop $mmc $ram; do

if [ -e $i/queue/iosched/writes_starved ]; then

echo "2" > $i/queue/iosched/writes_starved; fi

done;

#---------------------------------------------#

# Set SDCache

#---------------------------------------------#

for i in $sdcard; do

if [ -e ${i}/read_ahead_kb ]; then

echo $READ_AHEAD_KB >> ${i}/read_ahead_kb

echo "SDCACHE > $(cat ${i}/read_ahead_kb) / $READ_AHEAD_KB"; fi

done

#---------------------------------------------#

# Set MIN/MAX CPU Frequency

#---------------------------------------------#

for a in $cpu; do

if [ -e ${a}/cpufreq/max_limit ]; then

echo $MAX_OC_LIMIT >> ${a}/cpufreq/max_limit

echo "MAX OC LIMIT > $(cat ${a}/cpufreq/max_limit) / $MAX_OC_LIMIT"; fi

if [ -e ${a}/cpufreq/scaling_min_freq ]; then

echo $CPU_MIN >> ${a}/cpufreq/scaling_min_freq

echo "MIN CPU FREQ > $(cat ${a}/cpufreq/scaling_min_freq) / $CPU_MIN" ; fi

if [ -e ${a}/cpufreq/scaling_max_freq ]; then

echo $CPU_MAX >> ${a}/cpufreq/scaling_max_freq

echo "MAX CPU FREQ > $(cat ${a}/cpufreq/scaling_max_freq) / $CPU_MAX"; fi

done

#---------------------------------------------#

# Set CPU Boost

#---------------------------------------------#

for a in $module; do

if [ -e ${a}/cpu_boost/parameters/boost_ms ]; then

echo $BOOST_MS >> ${a}/cpu_boost/parameters/boost_ms

echo "CPU BOOST MS > $(cat ${a}/cpu_boost/parameters/boost_ms) / $BOOST_MS"; fi

if [ -e ${a}/cpu_boost/parameters/input_boost_freq ]; then

echo $INPUT_BOOST_FREQ >> ${a}/cpu_boost/parameters/input_boost_freq

echo "CPU INPUT BOOST FREQ > $(cat ${a}/cpu_boost/parameters/input_boost_freq) / $INPUT_BOOST_FREQ"; fi

if [ -e ${a}/cpu_boost/parameters/input_boost_ms ]; then

echo $INPUT_BOOST_MS >> ${a}/cpu_boost/parameters/input_boost_ms

echo "CPU INPUT BOOST MS > $(cat ${a}/cpu_boost/parameters/input_boost_ms) / $INPUT_BOOST_MS"; fi

if [ -e ${a}/cpu_boost/parameters/sync_threshold ]; then

echo $SYNC_THRESHOLD >> ${a}/cpu_boost/parameters/sync_threshold

echo "CPU SYNC_THRESHOLD > $(cat ${a}/cpu_boost/parameters/sync_threshold) / $SYNC_THRESHOLD"; fi

done

#---------------------------------------------#

# Set Intelli-Plug

#---------------------------------------------#

#---------------------------------------------#

echo " "

echo ">>> Intelliplug"

#---------------------------------------------#

for a in $module; do

if [ -e ${a}/intelli_plug/parameters/intelli_plug_active ]; then

if [ $ACTIVATE_INTELLIPLUG = "1" ]; then

stop mpdecision; else

if [ $ACTIVATE_INTELLIPLUG = "0" ]; then

start mpdecision; fi; fi

echo $ACTIVATE_INTELLIPLUG >> ${a}/intelli_plug/parameters/intelli_plug_active

echo "INTELLIPLUG > $(cat ${a}/intelli_plug/parameters/intelli_plug_active) / $ACTIVATE_INTELLIPLUG"; fi

if [ -e ${a}/intelli_plug/parameters/eco_mode_active ]; then

echo $DUAL_CORE_MODE >> ${a}/intelli_plug/parameters/eco_mode_active

echo "DUALCORE MODE > $(cat ${a}/intelli_plug/parameters/eco_mode_active) / $DUAL_CORE_MODE"; fi

if [ -e ${a}/intelli_plug/parameters/nr_fshift ]; then

echo $NR_FSHIFT >> ${a}/intelli_plug/parameters/nr_fshift

echo "INTELLIPLUG NR FSHIFT > $(cat ${a}/intelli_plug/parameters/nr_fshift) / $NR_FSHIFT"; fi

if [ -e ${a}/intelli_plug/parameters/nr_run_hysteresis ]; then

echo $NR_RUN_HYSTERESIS >> ${a}/intelli_plug/parameters/nr_run_hysteresis

echo "INTELLIPLUG NR RUN HYSTERESIS > $(cat ${a}/intelli_plug/parameters/nr_run_hysteresis) / $NR_RUN_HYSTERESIS"; fi

done

#---------------------------------------------#

# Set Intelli Thermal

#---------------------------------------------#

#---------------------------------------------#

echo " "

echo ">>> Intelli Thermal"

#---------------------------------------------#

for a in $module; do

if [ -e ${a}/msm_thermal/parameters/enabled ]; then

echo $ACTIVATE_INTELLI_THERMAL >> ${a}/msm_thermal/parameters/enabled

echo "INTELLI THERMAL > $(cat ${a}/msm_thermal/parameters/enabled) / $ACTIVATE_INTELLI_THERMAL"; fi

if [ -e ${a}/msm_thermal/parameters/core_limit_temp ]; then

echo $CORE_LIMIT_TEMP >> ${a}/msm_thermal/parameters/core_limit_temp

echo "CPU CORE TEMP LIMIT > $(cat ${a}/msm_thermal/parameters/core_limit_temp) / $CORE_LIMIT_TEMP"; fi

if [ -e ${a}/msm_thermal/parameters/core_temp_hysteresis ]; then

echo $CORE_TEMP_HYSTERESIS >> ${a}/msm_thermal/parameters/core_temp_hysteresis

echo "CPU CORE TEMP HYSTERESIS > $(cat ${a}/msm_thermal/parameters/core_temp_hysteresis) / $CORE_TEMP_HYSTERESIS"; fi

if [ -e ${a}/msm_thermal/parameters/freq_step ]; then

echo $FREQ_STEP >> ${a}/msm_thermal/parameters/freq_step

echo "CPU THERMAL FREQ STEP > $(cat ${a}/msm_thermal/parameters/freq_step) / $FREQ_STEP"; fi

if [ -e ${a}/msm_thermal/parameters/limit_temp ]; then

echo $LIMIT_TEMP >> ${a}/msm_thermal/parameters/limit_temp

echo "TEMP LIMIT > $(cat ${a}/msm_thermal/parameters/limit_temp) / $LIMIT_TEMP"; fi

if [ -e ${a}/msm_thermal/parameters/psm_temp ]; then

echo $PSM_TEMP >> ${a}/msm_thermal/parameters/psm_temp

echo "PSM TEMP > $(cat ${a}/msm_thermal/parameters/psm_temp) / $PSM_TEMP"; fi

if [ -e ${a}/msm_thermal/parameters/psm_temp_hysteresis ]; then

echo $PSM_TEMP_HYSTERESIS >> ${a}/msm_thermal/parameters/psm_temp_hysteresis

echo "PSM TEMP HYSTERESIS > $(cat ${a}/msm_thermal/parameters/psm_temp_hysteresis) / $PSM_TEMP_HYSTERESIS"; fi

if [ -e ${a}/msm_thermal/parameters/temp_hysteresis ]; then

echo $TEMP_HYSTERESIS >> ${a}/msm_thermal/parameters/temp_hysteresis

echo "TEMP HYSTERESIS > $(cat ${a}/msm_thermal/parameters/temp_hysteresis) / $TEMP_HYSTERESIS"; fi

done

#---------------------------------------------#

# Apply GPU Configuration #

#---------------------------------------------#

#---------------------------------------------#

echo " "

echo ">>> GPU"

#---------------------------------------------#

#---------------------------------------------#

#Set GPU Governor

#---------------------------------------------#

for a in $gpu; do

if [ -e ${a}/governor ]; then

echo $GPU_GOVERNOR >> ${a}/governor

echo "GPU GOVERNOR > $(cat ${a}/governor) / $GPU_GOVERNOR"; fi

done

#---------------------------------------------#

# Set MIN/MAX CPU Frequency

#---------------------------------------------#

for a in $gpu; do

if [ -e ${a}/min_freq ]; then

echo $GPU_MIN >> ${a}/min_freq

echo "MIN GPU FREQ > $(cat ${a}/min_freq) / $GPU_MIN"; fi

if [ -e ${a}/max_freq ]; then

echo $GPU_MAX >> ${a}/max_freq

echo "MAX GPU FREQ > $(cat ${a}/max_freq) / $GPU_MAX"; fi

done

You can use it through SManager or simple on boot through init.d.

SManager will give you some echos of your Values, so you can check if they stick.

ExamPle

echo "CPU Governor > $(cat ${a}/cpufreq/scaling_governor) / $GOVERNOR";

Output

CPU Governor > intellidemand / intellidemand

First Value is the current active Governor

$(cat ${a}/cpufreq/scaling_governor)

Second is your configured Value

$GOVERNOR

Gesendet von meinem SM-N9005