[LG Spirit Guides, News, & Discussion] Tomo123:
Still testing, it seems... I've read up on a few G3 threads where users are reporting that LG has done something fishy with the Interactive governor. And by that, I mean LG and only LG, since it seems that the cpu is often causing tweaking issues in combination with the interactive governor. That may be the same case here, and that problem is rustling my jimmies.

Example

Looks like LG implemented HMP. Heterogeneous Multi-Processing (HMP) is a more advanced version of big.LITTLE technology. In this setup, a processor can utilise all cores at the same time, or just a single core for low-intensity tasks. This can provide powerful performance or increased battery life respectively. We don't use it, and yet the HMP is loaded.

HMP being loaded ( from init.qcom.post_boot.sh ):

# HMP scheduler settings for 8916, 8936, 8939

echo 2 > /proc/sys/kernel/sched_window_stats_policy

echo 3 > /proc/sys/kernel/sched_ravg_hist_size

# HMP Task packing settings for 8916, 8936, 8939

echo 50 > /proc/sys/kernel/sched_small_task

echo 50 > /proc/sys/kernel/sched_mostly_idle_load

echo 10 > /proc/sys/kernel/sched_mostly_idle_nr_run

I guess that's causing issues - I don't know. After reading a ****load of docs on governors, I will try to implement LG's default settings with a few new-found tweaks to keep the phone at an idle frequency lower than default 800. I am hellbent on solving this puzzle, no matter if it takes me a thousand tries! Wish I could grab one of the software engineers who worked on this phone and rub his bald head all over my ****** ***** and then, use his **** as a floor-mop!

Obsolete.

But, if you'd like, you can test my latest idea.

Firstly, turn off Recently! by Chainfire - I noticed more stuttering in the recent cards list with it enabled. I'll do more testing on the cause of that later.

Then, go into Kernel Adiutor CPU section, turn of "apply on boot". Keep other settings as they are. Power-cycle the phone ( turn off, wait 15-20 seconds, turn on ) so it starts up on default cpu settings.

After the power on, wait for Adiutor to do it's thing. Then, open it, go to the CPU section, set "apply on boot" and enter these values:

max: 1209

min: 200

interactive governor

above_hispeed_delay: 20000 1094400:40000

go_hispeed_load: 90

hispeed_freq: 998400

min_sample_time: 40000

target_loads: 45 800000:85 998400:90 1094400:80

timer_rate: 20000

They are VERY close to the default settings, but let me know how they work for you. I just tweaked them a bit, and allowed the cpu to drop to idle and go up just as fast.

Use Cool Tool with 0.5 refresh interval and observe what happens. You can also look up Kernel Adiutor's frequency table after a couple of hours. 200 and 400 will be the most used idle frequency steps, with 998 the most used "working" frequency. If that's the case, YIPPEE! We solved it.

Pro-tip:

Notice this value - target_loads: 45 800000:85 998400:90 1094400:80

Everyone's phone is different, as in everyone is running different background apps/processes. I've set 45 as a "standard" idle load value that I think is enough for anyone. But, if you notice your cpu jumping out of idle often while you're not interacting with the phone, increase the value by 5 or 10 until it stops jumping from idle as often ( max value is 84, do not go over that ). Occasional jumps from idle frequency are normal, however it must not happen often. Find the sweet spot, young padawan :D:D:D

Example:

target_loads: 45 800000:85 998400:90 1094400:80 or...

target_loads: 50 800000:85 998400:90 1094400:80 or...

target_loads: 60 800000:85 998400:90 1094400:80 ... you get the idea.

It can be lowered, too. I noticed my idle is ok until values like 30 or 35. Then my idle starts to jump like crazy ( from 200 upwards ).

P.S. And yeah, I read all of this. Goddammit, my head feels like a melon. Looks like one too.