yashsingh1/xdaforums huggingface dataset:
[Nexus 4 Original Android Development] lookitzjohnny:
Dont have any friends with ip5 i only have a ip4 or ipad mini in the household. i guess i can use i the ipad mini since its "newer" haha i will update when i find something close!
[Nexus 4 Original Android Development] faux123:
Eco mode from Intellidemand... ;)
[Nexus 4 Original Android Development] undercover:
To the guy that needs to change faster in the car. Connect two middle pins in usb cable, that will trick phone that it's charging from AC, hence faster charge. Works a treat.
[Nexus 4 Original Android Development] Redmed427:
My current charger supplies enough power to keep it in ac charging mode. I guess I have nothing at all to lose by flashing the kernel!
[Nexus 4 Original Android Development] undercover:
Are you sure? If phone thinks it's usb it won't draw more than 500 so it doesn't damage port. Connecting middle pins tricks it into thinking that it's AC charger.
[Nexus 4 Original Android Development] Redmed427:
Positive. I'm connected to it right now
[Nexus 4 Original Android Development] SysAdmNj:
What display brightness do you use with your settings? Not auto right?
[Nexus 4 Original Android Development] SIGUEL:
Been tweaking the Gamma/Colors control to find a sweet spot, so far there's a definitely an improvement.

Now only need individual frequency voltage adjustments.

Sent from my Nexus 4
[Nexus 4 Original Android Development] wurzelsepp3:
With "System Tuner" you can do that already
[Nexus 4 Original Android Development] drewtang:
@faux loving the kernel, and digging the gamma settings you recommended. Thanks for your hard work.
[Nexus 4 Original Android Development] SIGUEL:
I know. But already paid for Faux's app, I rather support him.

Sent from my Nexus 4
[Nexus 4 Original Android Development] jhericurls:
I like AMOLED colours so this is as close as I could get:

R/G/B 255/255/255

Amp 0:

R/G/B 16/14/31

Amp 1:

R/G/B 1/2/6
[Nexus 4 Original Android Development] lookitzjohnny:
25-30% brightness
[Nexus 4 Original Android Development] ricey1986:
Managed to purchase the app just setup a fresh account extreme but bloody worth it. Keep up the amazing work faux
[Nexus 4 Original Android Development] codesplice:
It's in the SOC tab of the FauxClock app.
[Nexus 4 Original Android Development] hatyrei:
Server down? I can't even download the kernel directly from the app :(
[Nexus 4 Original Android Development] codesplice:
Looks like it. Getting an HTTP 503 error at http://faux.androidro.ms/mako/
[Nexus 4 Original Android Development] faux123:
server is undergoing maintenance... should be back in a few hours :fingers-crossed:
[Nexus 4 Original Android Development] Globespy:
I'm not sure what that means?

I thought snake charmer forced each core to stick to set frequencies?

The fact that I'm underclocked CPU means that my phone is not being pushed at stock speeds, so why would it be throttled? Surely that's something that is more likely with an overclocked CPU?

Plus, I'm also underclocking my GPU to 320 MHz using simple governor.
[Nexus 4 Original Android Development] faux123:
Throttling is based on temperature not CPU speed (of course higher speed runs hotter.. but doesn't mean lower speed can't run hot either...)

1 usage scenario:

you could be underclocked to 1.35 GHz... with screen on auto during a hot sunny day while putting you phone on dash board holder as a GPS with Car Charger connected... I can guarantee that you will be running hot and be throttled (even though you were "underclocking")
[Nexus 4 Original Android Development] ceejay83:
any download mirrors?
[Nexus 4 Original Android Development] codesplice:
Here's the 16tbm variant: https://docs.google.com/file/d/0B046UrEgTGGNeEw4MVFTSW9mWGM/edit?usp=sharing
[Nexus 4 Original Android Development] franciscofranco:
[MENTION=3332811]faux123[/MENTION]

I tested your GPU governor for a few days and while it doesn't overspend time on Max Freq as Ondemand governor, it still hits max too much in my opinion. I played a bit with the laziness level and theres a huge gap between setting 1 or 2. One spends too much on min, and the other too much on 325/max. I also think that the laziness-- logic is a bit too simple and since that code path is called so many times in so short time that I think it won't cut it if we really want bigger control. I added a simple ringbuffer with a history so that we can get the average of idle_stat and decide based on that. Also you don't need the checks that return val = 0 because the pwrscale ramp function won't go through unless val != 0, so its a waste of checks to return 0. Here's the attached diff, let me know what you think.

diff --git a/drivers/gpu/msm/kgsl_pwrscale_trustzone.c b/drivers/gpu/msm/kgsl_pwrscale_trustzone.c
index d976cd4..79d652b 100644
--- a/drivers/gpu/msm/kgsl_pwrscale_trustzone.c
+++ b/drivers/gpu/msm/kgsl_pwrscale_trustzone.c
@@ -143,26 +143,34 @@ static void tz_wake(struct kgsl_device *device, struct kgsl_pwrscale *pwrscale)
}

#ifdef CONFIG_MSM_KGSL_SIMPLE_GOV
-static int default_laziness = 5;
-module_param_named(simple_laziness, default_laziness, int, 0664);
+#define HISTORY_SIZE 10

-static int ramp_up_threshold = 6000;
+static int ramp_up_threshold = 5500;
module_param_named(simple_ramp_threshold, ramp_up_threshold, int, 0664);

-static int laziness;
+static unsigned int history[HISTORY_SIZE] = {0};
+static unsigned int counter = 0;

static int simple_governor(struct kgsl_device *device, int idle_stat)
{
struct kgsl_pwrctrl *pwr = &device->pwrctrl;
+	int i;
+	unsigned int total = 0;
+
+	history[counter] = idle_stat;
+
+	for (i = 0; i < HISTORY_SIZE; i++)
+	total += history[i];
+
+	total = total/HISTORY_SIZE;
+
+	if (++counter == 10)
+	counter = 0;

/* it's currently busy */
-	if (idle_stat < ramp_up_threshold)
+	if (total < ramp_up_threshold)
{
-	if (pwr->active_pwrlevel == 0)
-	/* already maxed, so do nothing */
-	return 0;
-
-	else if ((pwr->active_pwrlevel > 0) &&
+	if ((pwr->active_pwrlevel > 0) &&
(pwr->active_pwrlevel <= (pwr->num_pwrlevels - 1)))
/* bump up to next pwrlevel */
return -1;
@@ -172,20 +180,7 @@ static int simple_governor(struct kgsl_device *device, int idle_stat)
{
if ((pwr->active_pwrlevel >= 0) &&
(pwr->active_pwrlevel < (pwr->num_pwrlevels - 1)))
-	if (likely(--laziness > 0))
-	{
-	/* don't change anything yet hold off for a while */
-	return 0;
-	}
-	else
-	{
-	/* above min, lower it */
-	laziness = default_laziness;
-	return 1;
-	}
-	else if (pwr->active_pwrlevel == (pwr->num_pwrlevels - 1))
-	/* already @ min, so do nothing */
-	return 0;
+	return 1;
}

return 0;
[Nexus 4 Original Android Development] faux123:
Thanks for the code review.

Nothing against your comments on "saving a few instructions". I don't like my code having multiple return paths... it's just my coding practice. I like to minimize the return statements to as few as possible. If you look at the code, once the value has been set, it exists the conditionals immediately, then does a final return (and with modern compiler optimizations, it would be optimized out anyways with no penalty at all, but as far as code readability, it's much easier to understand than having multiple exit paths).

Now the comment on your history buffers..

The problem with ALL history buffers is called phase lag... because by the time you need to react to some instantaneous load, the result of your history buffer would be STALE and thus creating a phase lag and you will always be playing catch up... This will bring detrimental effect to the performance of the GPU. GPU needs to react ASAP to the instantaneous loads so it can fulfill the requests rapidly in order for the UI to appear smooth...

The design of my simple governor is based on the "fast up, slow down" theory. It will react instantly to load spikes, then the laziness factor will delay the ramp down so we don't go into a ping pong effect (rapid ramp ups and ramp downs).
[Nexus 4 Original Android Development] franciscofranco:
Sure about the returns its personal preference. I prefer right after returns because thats how I got taught ;) but you still don't need the checks that might give val a value of 0 because of this:

if (val) {

kgsl_pwrctrl_pwrlevel_change(device,

pwr->active_pwrlevel + val);

}

That won't go through if val == 0 so you're just wasting extra if checks. You just need two ifs, one for val = -1 and the other for val = 1.

True about the history average, but don't you think that sometime without the history (in this particular case) it will jump up when it doesn't need to? Imagine this very simple scenario:

sample number/load

1 - high load spike

2 - low load

3 - low load

4 - high load spike

5 - low load

With your logic it would ramp up 2 times unecessary and probably stay ramped up for the whole 5 samples since your logic its slow down. If you had a history it wouldn't ramp up either of the spikes because it wasn't really needed, it was just a spurious load spike. And with the average the GPU will be on max freq if it really justifies because its an evaluation of several samples.

Although your logic is simple and it works for the majority of cases, maybe it won't be good in the longer run.

Thoughts?

Thanks.
[Nexus 4 Original Android Development] Globespy:
Thanks. It has been unusually hot here the last few days so maybe that's why.
[Nexus 4 Original Android Development] hp13:
I feel 015 is still the smoothest. Crazy butter. My fingers slipping :p
[Nexus 4 Original Android Development] tyea:
The discussion on the GPU governor logic is interesting. It sounds similar to the application of data acquisition sampling window selection that best suits the data characteristics. In addition, it reminds of control theory, which I forgot mostly, but want to study again.

LG-E960
[Nexus 4 Original Android Development] hatyrei:
The battle between Nerds :p, " May the Code be with You "
[Nexus 4 Original Android Development] merkurial:
NFS support

Hi faux,

I wanted to mount some NFS shares and your kernel has these settings:

NFS V4 is a PITA to set up for a small LAN due to authentications whereas NFS V3 is really smooth and has much widespread usage than V4.

Could you mind enabling CONFIG_NFS_V3?
[Nexus 4 Original Android Development] faux123:
sure.. next version
[Nexus 4 Original Android Development] faux123:
yes... it's amazing that control theory is every where, even in kernels ;)

finding that optimal sampling window/rate plus optimal feedback/control will always give nerds sleepless nights wracking their brains...
[Nexus 4 Original Android Development] ak:
Thanks a lot faux i have bought your app and i have fantastic feeling coupled to your kernel. :good:
[Nexus 4 Original Android Development] elitemeat:
FauxClock has been wonky in general for me. Can you help me diagnose the issue?

Issues/ Symptoms:

Some settings don't stick after reboot sometimes. For example, even though I have Set On Boot for CPU max clock, min clock, mpdecision OFF Eco mode ON Snake Charmer ON, it will reset these to the wrong settings.

SOC power control Set on Boot is OFF - but if i turn any of them ON they will remain ON after reboot.

One time I rebooted and Voltage was still at -125 mV. I always have this Set on Boot set to OFF

For I/O Scheduler Control, I have Set on Boot ON but it will always reset to deadline and 128 and Entropy contribution ON, even when I set it to the recommended values of fiops, 2048, and Entropy OFF. I have noticed it tends to reset even WITHOUT rebooting. Just reopening the app will reset it.

I cannot adjust vibration control. It is stuck at 70% even after reboots.

I'm running 16m but I think this issue started before that. Earlier on I never had any of these issues and everything I set would stick. I am using SuperSU.

I don't know if this information is relevant but I've also had terrible battery life recently. I've tried for weeks to diagnose but it hasn't gotten much better. Issue is suspend_backoff ( I do not have chrome installed). I posted my issues to the BetteryBatteryStats thread and they mentioned it as sensor issue, but I have no idea how to pinpoint what is causing it. I will post my log just incase (54% drain overnight, most apps disabled).

All these issues I noticed were not resolved when I updated to the newer PA rom or faux 16m kernel. So I'm not sure if its ROM or kernel related.
[Nexus 4 Original Android Development] toinux:
Try to uninstall + install FauxClock
[Nexus 4 Original Android Development] Ranaquajaro:
Used to be the same for me, clear data, uninstall, fix permissions and reinstall fixed it for me
[Nexus 4 Original Android Development] faux123:
Nexus 4 kernel 017 beta 1 is out!

* More ZRAM SWAP tweaks from SGS 4 kernels

* 2 CAF GPU patches to make simple Governor better :D
[Nexus 4 Original Android Development] wera750:
Faux have you posted any recommended settings for zram yet? I'm afraid to mess it up as I don't know much about it.
[Nexus 4 Original Android Development] KerryWood34:
He said he's running some tests and will post back in about a week or so when he has finished.
[Nexus 4 Original Android Development] JaylanPHNX:
Yeah, I turned it on, but kept everything at default. I'm not sure if that's even doing anything.

Sent from an N4 blessed with AOKP and sanctified by Faux123!
[Nexus 4 Original Android Development] Guto ViP:
I'm using ZRAM with 256 mb.
[Nexus 4 Original Android Development] Sblast:
Just flashed the latest kernel...getting some lag when waking the phone.

Anyone else getting it?
[Nexus 4 Original Android Development] KerryWood34:
I just flashed the latest beta as well but am not experiencing any lag whatsoever. What ROM are you using? I'm on Cm 10.1.0 stable and all is well so far.
[Nexus 4 Original Android Development] Ace42:
Probably related to your min frequency, or exiting deep sleep mode causes it.
[Nexus 4 Original Android Development] KerryWood34:
Didn't even think about min freq good idea. Also check what cpu governor you are using and whether eco mode is turned on (dual core may cause some slowness?)
[Nexus 4 Original Android Development] Kodam:
ap watchdog bark

I used the 1.9 ghz boost+gpu oc kernel and I got a green screen with "ap watchdog bark detected".this happend two times. First I lost all appdata except call log and sms, but everything else is gone...i wiped and reflash everything but it s happened again, fortunately i havent lost anything.( gpu 360mhz and cpu 1.6 ghz)

Does anybody know what the hell is the watchdog bark and the solution?

Now im using franco kernel and it seems good, so i hope this is a bug in this kernel and not my phone fault
[Nexus 4 Original Android Development] Sucalakafufu:
17b1 added

http://db.tt/T6w02Muf
[Nexus 4 Original Android Development] HQ_seppel:
Hi,

the same here Clock Speed is 270-1,242Ghz and 150mv UV. Same Problem without UV an C-States...

After the last green screen i must do a hardreset, because bootloop after this...:crying:

Now im testin Beta 17

Greets Sebastian
[Nexus 4 Original Android Development] JaylanPHNX:
The green screen is a modem failure. It used to present as a random reboot with nothing in the log to indicate what happened, but Faux123 enabled the green screen code (which was already there, just unused) to help distinguish it from kernel issues.

Sent from an N4 blessed with AOKP and sanctified by Faux123!
[Nexus 4 Original Android Development] alen1901:
Guys, when you get green screen and that bootloop, did you try to make backup and restore only data?

Sent from Sparkling Nexus 4
[Nexus 4 Original Android Development] tlf55:
Hi i've a few question

In Simple Governor for GPU

Is it okay if it's 400 mhz max, Laziness at 3 and Ramps at 8 ( it will save a bit my battery right ? ) i don't understand how it calculate to go higher mhz ? (in the Faux123 app it stays at 400 :/ )

And is it okay to use Intellidemand with Mpdecision ? Or is it totally useless ?

Thanks in advance !
[Nexus 4 Original Android Development] Guto ViP:
I needs turn Mpdecision Off if you wanna use Intellidemand.
[Nexus 4 Original Android Development] pikachukaki:
Do we have 017 beta changelog?
[Nexus 4 Original Android Development] KerryWood34:
Faux posted it when he announced the 17 beta a few pages back

Nexus 4 kernel 017 beta 1 is out!

* More ZRAM SWAP tweaks from SGS 4 kernels

* 2 CAF GPU patches to make simple Governor better
[Nexus 4 Original Android Development] HQ_seppel:
Hi alen1901,

yes i have tryed this, but that was no resolution.

Greets Sebastian
[Nexus 4 Original Android Development] wiwid.colgate:
Hi

Just flashed to the latest beta 17.

Open the faux clock apps, check GPU tab it show on 128mhz.

I set to 400mhz, but it won't stick.

Am I doing wrong, or I missed something here?

コルゲート

4.2.2 Google neXus4

follow - [MENTION=1109101]wiwid[/MENTION]_colgate -
[Nexus 4 Original Android Development] ak:
Allowed GPU freqs are 360 and 600.
[Nexus 4 Original Android Development] wiwid.colgate:
Ouch....

Solved my problem.

I didn't noticed that the faux apps, had an update....:D

So, it's ok to setup at 360mhz?

May I ask, bout the gpu governor setting and z-ram for good battery life?

I'm not often to play games on my phone, just daily driver.

Thanks

コルゲート

4.2.2 Google neXus4

follow - [MENTION=1109101]wiwid[/MENTION]_colgate -
[Nexus 4 Original Android Development] dshoe:
Should intelli_plug be used instead? Or neither?
[Nexus 4 Original Android Development] Tipkaros:
intelli_plug + intellidemand or mpdecision+ondemand. those are probably the best combinations
[Nexus 4 Original Android Development] brunini:
Since you have flash the 17 beta you should change your GPU governor to "simple" instead "ondemand".
[Nexus 4 Original Android Development] cgulliver:
Having alot of freeze ups on Spotify and it locks the phone. Somewhat random but happens more when advancing through tracks.... http://pastebin.com/9DLkwqz9
[Nexus 4 Original Android Development] Ace42:
Intellidemand is a governor not an in kernel hot plug replacement. Intelli plug should be on if mpd is disabled.
[Nexus 4 Original Android Development] 0.0:
I'm using the defaults for z-control. But what should I put for the disk size for zram swap? What is the default? Thanks.

Sent from my Nexus 4
[Nexus 4 Original Android Development] faux123:
I am using spotify right now.. advancing many tracks... still haven't had any issues yet...
[Nexus 4 Original Android Development] ak:
The same for me ... No problem with spotify ... Sleambean 6.8 :thumbup:
[Nexus 4 Original Android Development] tlf55:
[MENTION=350276]faux[/MENTION]

Is that normal that my CPU freq jumps from 162mhz to 1.5ghz like every second according to your app ?
[Nexus 4 Original Android Development] wera750:
What is a safe z ram size?
[Nexus 4 Original Android Development] rmead01:
I also notice that when I have my min set to 384 that the last 3 cores will still drop to 162, or what the lowest available freq is.
[Nexus 4 Original Android Development] JaylanPHNX:
FauxClock is not necessarily the most accurate CPU monitor. It doesn't check as often as a dedicated monitor would, to keep from impacting battery and performance.

Sent from an N4 blessed with AOKP and sanctified by Faux123!
[Nexus 4 Original Android Development] ceejay83:
I monitored the freq with trickster and perfmon, noticed the same behavior as well. I just let my phone idle at the homescreen, and the frequencies were jumping all over the place and cores going offline/online a lot. This is with intellidemand.
[Nexus 4 Original Android Development] raycaster3:
Anyone else just get a hot reboot when updating the faux app? That's the first for me. Saw someone else mentioned it a few pages back.
[Nexus 4 Original Android Development] rmead01:
I'm using system monitor ad well as faux clock and can see the freq jumping quite a bit. While un needed cores are turning on when they don't need to be at idle and hitting near max, the load on the code is generally 0%

Is this OK or is there subserving else I could look for that would be causing this small consistent spike
[Nexus 4 Original Android Development] raycaster3:
Decided to revert to the.33 modem and do the lte thing, and I haven't had a yellow screen since. Well, I also updated to 17b01 as well. Might be a combo. Either way. Been getting respectable battery while experiencing what I consider to be excellent performance for my usage. Simplicity scrolling and over all absolutely zero lag. I like what in seeing from 17 so far. Props.
[Nexus 4 Original Android Development] beats4x:
+1 never had the green screen, also on .33 with LTE enabled. The overall smoothness of 17b01 is unmatched. I'm getting phenomenal battery life as well. I also posted a few pages back regarding screen tearing. Haven't had it happen once since flashing the newest beta. Awesome job [MENTION=3332811]faux123[/MENTION] ?
[Nexus 4 Original Android Development] _Vegas:
Same here, 017, phenomenal battery life, and the temperature seems higher than 016.

Sorry for bad English

来自 Nexus 4 上的 Tapatalk 4 Beta
[Nexus 4 Original Android Development] soumoks:
Temp seems higher?
[Nexus 4 Original Android Development] _Vegas:
016, when browsing ,temp around 35

When Gaming ,temp got 43 max

But 017 is 38~45

来自 Nexus 4 上的 Tapatalk 4 Beta

---------- Post added at 02:44 PM ---------- Previous post was at 02:39 PM ----------

Btw, the simple governor is better now ,get more time on low frequency than 016

Sorry for bad English

来自 Nexus 4 上的 Tapatalk 4 Beta
[Nexus 4 Original Android Development] Craxx:
After updating the faux app some minutes ago the phone booted again. I am on carbon rom. As i said before this didn't happens with any other app. This is very annoying :( I hope faux can or will fix this in the future.

Bootlog

https://copy.com/uLp9s

Gesendet von meinem Nexus 4 mit Tapatalk 4 Beta
[Nexus 4 Original Android Development] hp13:
What's a green/yellow screen ? When/how do you get it?
[Nexus 4 Original Android Development] _Vegas:
Had a yellow screen only once, C2 on, switch to C3 ,fine now.

来自 Nexus 4 上的 Tapatalk 4 Beta
[Nexus 4 Original Android Development] zubin111:
Happens with me too... all the time... i guess its not the rom, as the same behaviour was observed in different roms. It has been since quite some time, but a couple of updates back, it was updating normally, but since last two updates again it soft-reboots...
[Nexus 4 Original Android Development] :
Is there ans point in installing the display app when i already have fauxclock installed? I only use the color presets in fauxclock.
[Nexus 4 Original Android Development] pikachukaki:
I just disappointed :( i just get my brothers s3 and compare the screen why it looks great on s3 with great crystal color i try all the saved color profiles on faux clock but i coulnd achive so crystal colors!
[Nexus 4 Original Android Development] Ace42:
You're comparing an IPS+ display to an AMOLED...? If you want similar colors use obsanity amoled preset and you have to turn off the screen after changing colors...
[Nexus 4 Original Android Development] tlf55:
Hi Faux, is it possible to you to make a Stock enhanced kernel but with 2 or 3 feature ?

Add the possibility to use Simple Governor GPU

Add the possibility to undervolt under 800mV

Add the fix for CM10.1 flickering when oppening app with Pie control ?

That would make something very near stock (which is GREAT as you already added Hsic / Gamma / Sound) and not as featured that your mainline kernel is !

Thanks for considering this if you could ! :angel:
[Nexus 4 Original Android Development] pikachukaki:
Still couldnt get those popup crystal colors!so its the different screen technology?
[Nexus 4 Original Android Development] ak:
Yes ... the difference is amoled versus lcd ... two different world. :good:

you cant compare.

I prefer Amoled.

---------- Post added at 03:35 PM ---------- Previous post was at 03:34 PM ----------

you can try to change modem, crash is related to this.
[Nexus 4 Original Android Development] JaylanPHNX:
If all you use are the presets, probably not.

Sent from an N4 blessed with AOKP and sanctified by Faux123!
[Nexus 4 Original Android Development] PJcastaldo:
Not sure how your blaming the faux app .. I am on AOKP and have had zero issues with the app. No rebooting after updates.. Sounds like your ROM or a setting you have enabled somewhere...
[Nexus 4 Original Android Development] kurniawan77:
400