yashsingh1/xdaforums huggingface dataset:
[ONE Original Android Development] _ASSASSIN_:
yup, it's so noticeable when using my launcher or on falcon pro. Scrolling is so smooth. (Not to mention going in and out of apps doesn't feel janky anymore :D)

Did you do this by messing with the GPU or the CPU?

Issue is, however, that it now REALLY favors using the max frequency now :c
[ONE Original Android Development] Norapapa:
How can I activate profile
[ONE Original Android Development] RenderBroken:
Try the 30FPS build. It's a great compromise. Regardless I don't care that it uses higher freqs. I want my phone smooth when I am actually using it and power efficient when not. But it does give my re room for tuning hotplug and such to make up for it.

It's hard to say exactly how this works, it's nothing to deal with gpu code and such. It's more forcing the panel to use a min fps value. Kinda like how cpu boost works. But it is in the panel code. So I imagine the cpu and gpu help with it. Still got more testing to do. Even if I set the min to 15 fps. At least that should help with that slight UI lag that is inherent.
[ONE Original Android Development] _ASSASSIN_:
I'd say keep the min at 30 FPS. Using that build now and it's already much better in terms of it's frequency use. 15 FPS is really choppy
[ONE Original Android Development] RenderBroken:
Well yea 15FPS would e choppy but understand that it doesn't HAVE to use 15FPS. I am just not allowing the panel to use the option of 1FPS-14FPS. The default behavior is to try and stay at about 30FPS but its allows to use 1FPS - 63FPS. All I am doing with these changes is setting the MIN_FPS Value when there was not the option to do so before. I am about to post a 20FPS build then I will do a 15FPS to see the difference. But i think I will either stick with 20, 25 or 30 FPS. Problem is I have no dynamic way (yet) to set the FPS so I have to do it hardcoded for each build.
[ONE Original Android Development] RenderBroken:
I had been getting reports about the no OC/UC Build I made. It had been reported that when I removed OC/UC they were able to booth when the other builds with it they couldn't. I will take another look at OC/UC and see if I can make some adjustments. I have an idea of the possible issue and I believe it to be the min freq. Still I will play with it and release a test build for it as well.
[ONE Original Android Development] RenderBroken:
Here is the 25FPS Build. You can tell its slightly off from the 30FPS build but it idles better.

https://drive.google.com/file/d/0B-GVJKBx9-GnUTkyRkdsX0M5eU0/view?usp=sharing
[ONE Original Android Development] kouss77550:
I'm impatient to test this release ! Also, I can boot AK kernel without any problem, but not yours.. but I would love to test your builds !
[ONE Original Android Development] abhi08638:
Are you changing the min fps with this line in this commit?

qcom,min-refresh-rate = <30>;

https://github.com/RenderBroken/msm...mmit/45c3a07e88b214f49ea5601fc41a6311eec32aa7

I was thinking of a dynamic way to set the fps
[ONE Original Android Development] RenderBroken:
Yes that is it. but you have to set that line in the dtsi file for our panels.
[ONE Original Android Development] Almayce:
I must say the fps thingy (developer terminology at its finest), works really well. I'm using the 30 fps one. No drawback so far, battery is stable and the experience is better. Well done.
[ONE Original Android Development] RenderBroken:
I agree. I did not notice much extra drainage at all. I appreciate the testing.
[ONE Original Android Development] _ASSASSIN_:
Same here, got back to the same battery life as the previous test build with the 30 FPS I'd say.
[ONE Original Android Development] RenderBroken:
Glad to get more validation. :)
[ONE Original Android Development] spr33:
I have no idea what you did but smoothness has reached new heights! Using the 30fps build along with blu_active and the performance has dramatically improved yet again.
[ONE Original Android Development] Flak:
I may be the only one, but I'm preferring the 25fps version. It seems to idle much better for me than the 30fps one.
[ONE Original Android Development] RenderBroken:
what are you using to look at idle?
[ONE Original Android Development] aamitabh28:
The 30 fps build is amazing. Never has scrolling been as smooth on tapatalk. Almost gives an ios type feel with the default settings

Sent from my A0001
[ONE Original Android Development] RenderBroken:
I agree, also animations are more "complete" feeling., Meaning you can see where they begin and end better. Also I user Google Drive ALOT and when you select a file for download or whatever there is ALWAYS a slight lag with the slide out animation. Now its complete with no lag.

Here is another Test build.

1 I have modded my OC/UC for those that wre having the bootloops upon flashing. I ended up raising my L2 cache step for my 268MHz step. Lets see if this helps those afflicted. One thing i would like to know with these users is there PVS Bin number. Please get this to me asap.

2. I have bumped the FPS Rate to 35. I will not go any higher than this with my official builds. I have been looking at idle stats and I believe this will be a good solid value. Of not then I will do 32FPS since that is the recommended FPS value of movies and such (I believe I remember right)

https://drive.google.com/file/d/0B-GVJKBx9-GnRmVQTVhJVnFDNWM/view?usp=sharing
[ONE Original Android Development] _ASSASSIN_:
24 FPS is what they use in movies, because at that framerate they could sync the audio with the visuals (this was a LONG time ago). It continued to be the norm because films are very expensive so instead of using a smoother 30 FPS they continue to use 24 to save some money.

However 24 is pretty terrible. Anything below a solid 30 FPS is just atrocious when you are interacting with something. Also I'd just say never trust a movie for a frame rate norm considering that we are in control, not watching someone else do something :P.

/offtopic
[ONE Original Android Development] RenderBroken:
lol then i am trying to remember where I got 32 FPS. It has something to do with Videos but regardless. Thanks for chiming in. I am really digging this new build. Also I was using kernel adiutor at first to monitor CPU load and such and the program istelf causes about 20 - 25 CPU Load. Using other apps like System monitor you will see it properly. So I was worried at first about the load caused but forcing the smoother FPS but I tried other kernels without this change and such and was only getting about 5 less with the CPU Load value. so I am really happy with this modification and will be going live with it.

EDIT: 32 FPS is what they say the human eye's limit is. that's where I got that. Just though I would clarify. My mind is full of crazy facts. . .
[ONE Original Android Development] _ASSASSIN_:
Yeah I'm not too sure about that considering our eyes don't see in frames, we see in light that hits the back of our eyes...

I personally use perf monitor to check so I can see if it's using what frequencies and cores in-apps.
[ONE Original Android Development] RenderBroken:
I agree with you. I can tell a difference when gaming between 30 to 60 FPS. Have you tried the 35FPS build? What do you think?
[ONE Original Android Development] kalpik:
For what it's worth, this build boots fine for me. I had originally reported the bootloop of poop issue. But that was a few builds ago. Wasn't using your recent builds, but this fps stuff got me interested, and I tried it out :D

Sent from my A0001
[ONE Original Android Development] ernestnwanu:
Bootloop on Slimsaber I'm afraid.
[ONE Original Android Development] RenderBroken:
I am currently using SlimSaber with no issues.

Can you find out your PVS Bin for me please? I would love to know.

Also I will release another test build shortly. Could you test?
[ONE Original Android Development] ernestnwanu:
I can! Have the stock kernel backed up in TWRP. And yes, I tried reading my PVS Bin in Synapse as usual but I'm not getting any reading.. Do you know alternative ways of getting it?
[ONE Original Android Development] RenderBroken:
In terminal you should be able to run:

su

cat /proc/last_kmsg | grep bin: -i
[ONE Original Android Development] ernestnwanu:
PVS Bin: 9
[ONE Original Android Development] RenderBroken:
mine is 8 so that is not it. . . hmm really weird issue, I wish there was more to go on. But i am about to give you two builds. One with OCUC modded again and the other without OCUC at all.

OCUS Modded:

https://drive.google.com/file/d/0B-GVJKBx9-GnNDI0cDdBMlNlRjQ/view?usp=sharing
[ONE Original Android Development] RenderBroken:
Here is the one with no OCUC.

https://drive.google.com/file/d/0B-GVJKBx9-GnN2kyNmFqak9vdU0/view?usp=sharing
[ONE Original Android Development] Ofthecats:
Would it be possible to change fps values in synapse in the future?
[ONE Original Android Development] RenderBroken:
idk. Not at the moment. What would you change it to?
[ONE Original Android Development] ernestnwanu:
Unfortunately both test kernels result in a bootloop
[ONE Original Android Development] Norapapa:
No bootloop with latest euphoria and the kernel with ocuc
[ONE Original Android Development] RenderBroken:
This it has to be something specific to something you are doing. Could you outline your flashing process for for these test builds? i just flashed SlimSaber with no issues so it doesn't make sense to me.
[ONE Original Android Development] ernestnwanu:
Rom + tk gapps + superSU + xposed were already in place. I simply flashed the kernel and UKM on top of them. First one bootlooped so I restored my boot.img. Rebooted into recovery and flashed the other test kernel. Same story.
[ONE Original Android Development] RenderBroken:
Make a backup first then try to do the same sequence but leave out UKM. Can you try that? If it still bootloops then leave out xposed. I am trying to find a common denominator. Thanks for all your help!
[ONE Original Android Development] HaTrED_:
Try that workaround of shutting your phone off, wait a few seconds and power it back on...
[ONE Original Android Development] Flak:
Have you tried without xposed?
[ONE Original Android Development] ernestnwanu:
I'll try tomorrow since I need my device for a bit. Yes I've tried leaving out UKM, xposed and the turning off trick, just not on the latest test kernels yet. I'll try but I doubt that's the issue. I remember having the same problem with earlier Render kernels. I'm talking the first couple versions back on like page 2 or 3 where I commented (March). It's weird.
[ONE Original Android Development] RenderBroken:
yes it is weird. Ok Whenever you get a chance is fine with me. Thanks for all you have done so far.
[ONE Original Android Development] akuma48465:
With Ak kernel 283 I dont have any problems everything is working properly
[ONE Original Android Development] RenderBroken:
And how does the no oc/uc build work for you?
[ONE Original Android Development] Ofthecats:
In the event that I'd prefer to reduce battery drain at the cost of fps
[ONE Original Android Development] RenderBroken:
Gotcha, well at the moment there is not a way to control is live since it has to be set in the dtsi file. I have looked into a way t set it via userspace. Also the actual drainage is negligible. What this also does is give more power to the hotplug and governors. Since we really depended on them for a smooth UI. Now we can go with a more conservative setup while maintaining a smooth UIX.
[ONE Original Android Development] mutalikga:
[MENTION=5438598]RenderBroken[/MENTION] , I tried ocuc mod 1, 2 and no ucoc tests on exodus 7/19 build all bootloop

But R15 boots fine .

Also I don't have any boot issues with AK kernel
[ONE Original Android Development] Luc.Nex:
[MENTION=5438598]RenderBroken[/MENTION] How does the high performance mode in the sound settings work?
[ONE Original Android Development] _ASSASSIN_:
Ever tried using to AK uninstaller, then installing render+ukm
[ONE Original Android Development] RenderBroken:
I am not 100% certain that it works. I think I had read that it doesn't work anymore. Its for if you have 192KHz headphones I believe.
[ONE Original Android Development] mutalikga:
Ya I always use AK uninstaller v4 and flash ROM then kernel
[ONE Original Android Development] RenderBroken:
Ok Cool. Good to know. Here is another Test build. Please flash and let me know. Thanks as always!

https://drive.google.com/file/d/0B-GVJKBx9-GnR3pwSUZMNE9lbDA/view?usp=sharing
[ONE Original Android Development] RenderBroken:
Also this to make things clear, this test build is for those that have issues with the bootloops and such. Please test and let me know asap how it works for you. I am ready to release R18 but need word about this first (or would at least like to hear back first)
[ONE Original Android Development] mutalikga:
Booted fine on slimsaber latest clean flash

Does it include the 35 fps feature??
[ONE Original Android Development] ernestnwanu:
Latest test kernel booted fine for me on Slimsaber!
[ONE Original Android Development] _ASSASSIN_:
Just want to say that using stock impulse with the latest build (not the no OC build), playing metroid zero mission is so smooth :D
[ONE Original Android Development] RenderBroken:
I have the FPS locked at 30. I feel this is the best balance.

Looks like we have identified the problem. I will have to continue looking into it. Thanks guys for the heads up. I may just remove OC/UC for R18 just for the time being till I can figure out the exact issue. Thanks again.
[ONE Original Android Development] kouss77550:
Same here, booting perfectly, I'm so happy haha :)
[ONE Original Android Development] RenderBroken:
Glad to hear!!!

If all goes well I will Release when I get back home.
[ONE Original Android Development] Ofthecats:
????

Wait can we haz more hotplug and governor options? All this stability and functionality is driving me crazy lol

Edit: sorry if that came off rude. Please ignore me lol. I like shiny new things
[ONE Original Android Development] ernestnwanu:
I do have one problem and that is that WiFi drops are back for me. A commit in the latest Slimsaber finally fixed those for me but I have the drops again (on screen off) after flashing Render. Could you possibly look into that? Thank you.
[ONE Original Android Development] RenderBroken:
There is no real difference in both of our kernels regarding WLAN.
[ONE Original Android Development] ernestnwanu:
Strange. It's a literal case of experiencing them on this kernel, remedied by dirty flashing (reverting to SlimSaber's stock kernel). I'm not singling out this kernel by any means though. I've had the WiFi drops ever since Lollipop was introduced no matter what I did.
[ONE Original Android Development] RenderBroken:
No offence taken. I am very analytical so I look to see what the difference is all the time. I compare and contrast. The only thing I can think of is the updated firmware I include with my kernel:

https://github.com/RenderBroken/msm8974_OPO_render_kernel/commit/3993d2eceb16fe9418c32a70f20e727246278561

I will keep an eye on it.

I do have one more test in regards to OC/UC. I have lowered the memory bandwidth on the OC Freq.

R18-T25

If those with the bootloops can test this last test build, I would appreciate it.
[ONE Original Android Development] ernestnwanu:
Trying this right now. Will reply shortly.

EDIT: Bootloop
[ONE Original Android Development] RenderBroken:
I really wish to know why this is such the case for you. The commit for OC/UC is a clean one . . .

https://github.com/RenderBroken/msm8974_OPO_render_kernel/commit/842ef8b087f7ac5ad9f722c375f06753bbb79c03
[ONE Original Android Development] mutalikga:
Boot loop for me too[emoji30]

Edit: AK kernel has uc/oc but didn't have any boot issues ...
[ONE Original Android Development] RenderBroken:
I just don't know why this causes bootloops for yall. I have no clue. Everything looks right.

AK uses a different way to populate the CPUFREQ Table. His uses DevFreq. Mine does not. Mine uses the standard way. I reverted some upstream commits to make Load Based Syncs work properly. I have my Scheduler setup differently than his and I had to revert those upstream changes or we would have random reboots all he time because the scheduler causes panics. I feel my scheduler changes are a big reason why my kernel performs the way it does. I worked to make the scheduler aware of frequency and load before scheduling workloads to certain cores. Also I have made CPU-Boost aware of the scheduler and they work together now. I feel this is one reason my kernel stands apart from the other kernels for the OPO.

Note: The upstream Devfreq way of populating the Freq Table appears to be more forgiving for devices. It sets certain values automatically. Whereas I have to manually set mine.

So with that, I wish I knew what the exact cause is for yalls bootloops.
[ONE Original Android Development] Norapapa:
Same here, bootloop with T25. Back to 23. I am on the latest euphoria.
[ONE Original Android Development] kevinyohh:
I'm having issues with ghost touches (phone wakes in my pocket with double tap and prevent accidental wakes enabled). Does this kernel has a fix for it, it depends on the ROM of is there any fix or kernel that has it fixed? I'm on the latest Blisspop with one of your last test builds (30 fps).

Oneplus One ~ Never Settle
[ONE Original Android Development] RenderBroken:
I had reverted OC/Uc and tuned Freq table to be more effecient on the lower end and Bumped L2 Cache and Memory Bandwidth up on the very highest freq. But no UC or OC freq:

Please test and let me know. Thanks! :)

https://drive.google.com/file/d/0B-GVJKBx9-GnLUk3MVlQcmNoNFU/view?usp=sharing

Well this is really little known issue but it seems to be rom side. Especially with DT2W in your pocket. Apparently the whole proximity sensor fail safe is not working right.
[ONE Original Android Development] spr33:
Is this for people who are having bootloop issues or will this be the next build? Finding it difficult to keep up!
[ONE Original Android Development] nfin1te:
its for bootloopers
[ONE Original Android Development] Norapapa:
No bootloop with T26 and the latest euphoria.
[ONE Original Android Development] RenderBroken:
This will be the new main stay. I will no longer support OC/UC. I wish I could but I would rather have a stable experience. There is no telling if it causes other unseen issues and really don't use the OC freq anyways and the power difference from 268MHz to 300MHz is negligible. I have tuned each freq step for battery savings on low in and performance on the high end.
[ONE Original Android Development] deepaklunked:
Downloading R18 now...

Sent from my ONE
[ONE Original Android Development] ernestnwanu:
R18 running nicely, thanks for the patience with all the testing. Just a bummer that wifi drops were re-introduced on my end.
[ONE Original Android Development] mutalikga:
R18 working flawlessly on slim saber
[ONE Original Android Development] thoiloidainhan:
Did u change any memory management stuffs in r18 [MENTION=5438598]RenderBroken[/MENTION]? I noticed quite a few of my apps got unnecessarily killed compared to before
[ONE Original Android Development] Sultanxda:
[MENTION=5438598]RenderBroken[/MENTION] dynamic FPS requires support for it enabled in the display HAL, but that isn't the real problem. Dynamic FPS is only supported by video-mode panels; all of our devices use command-mode panels, so enabling the dynamic FPS option in the kernel does nothing on our device. Proof: https://github.com/RenderBroken/msm...ivers/video/msm/mdss/mdss_mdp_overlay.c#L3797

We're already using a power-saving technique that can only be used by command-mode panels (ULPS transition on static image), so I don't think there's much more you can do to reduce the panel's energy consumption.
[ONE Original Android Development] nfin1te:
Diiiid you read the changelog? :D

"Update Low Memory Killer" - so yes :)

Edit: Updated now aswell, euphoria 07/05 with R18, awesome as ever, very smooth, no bugs or problems so far. :) yay!
[ONE Original Android Development] RenderBroken:
I will keep am eye on this and if needed, I can revert the changes.

I am not trying to reduce panel energy consumption. I am trying to increase UI smoothness. Also I have already confirmed that this does work on our device. Not only can I check it via sysfs, you can actually notice the smoothness.

Location of sysfs I am referring to:

/sys/devices/virtual/graphics/fb0/msm_fb_panel_info

You will also see that info if partial panel update was enabled in the same file.

Thanks!
[ONE Original Android Development] Sultanxda:
It's not working, and dynamic FPS is a power-saving technology. The panel capabilities file (msm_fb_panel_info) means nothing in this case (as the display HAL will not care about whether or not dynamic FPS is enabled from there, since it requires dynamic FPS to be enabled with a flag at the time of compilation). Take a look at the actual code for dynamic FPS:

When dynamic FPS is enabled in the display HAL, hwcomposer controls dynamic FPS via this sysfs path: https://github.com/CyanogenMod/andr...2.1-caf-8974/libhwcomposer/hwc_utils.cpp#L417

"/sys/class/graphics/fb0/dynamic_fps" which doesn't exist, because it's only created for video-mode panels: https://github.com/RenderBroken/msm...ivers/video/msm/mdss/mdss_mdp_overlay.c#L3797

Dynamic FPS in the kernel alone does nothing, as it relies on hwcomposer to control it via that sysfs node I showed you (also, assuming we had a video-mode panel, only enabling dynamic FPS in the kernel and not hwcomposer would be akin to a car with no driver). Tracing back the functions and code that do the actual work for dynamic FPS (the mdss_mdp_ctl_update_fps() function) leads you here: https://github.com/RenderBroken/msm...ivers/video/msm/mdss/mdss_mdp_overlay.c#L2248

...which happens to be the /sys/class/graphics/fb0/dynamic_fps sysfs node that is only created for video-mode panels. mdss_mdp_ctl_update_fps(), which is the main function that controls dynamic FPS, is not used anywhere else in the kernel but inside the /sys/class/graphics/fb0/dynamic_fps sysfs node.
[ONE Original Android Development] FunkyRasta:
So to get that right: you cannot dynamically change FPS (write an idler for it) or setting this minimum FPS doesn't work at ALL , it does nothing ?

Anyway, it's kinda hard for me to imagine how minimum FPS can be forced, as it is up to state of hardware, clock, cores online and load placed on GPU and CPU.

Wysłane z mojego A0001 przy użyciu Tapatalka
[ONE Original Android Development] RenderBroken:
OK I hear you. I could be wrong. This is not an area I am an expert in. I will admit that. But what is the smoothness I notice with the 45FPS build I had done. I know its not placebo. I don't know if you could flash it to test to see what I am talking about. But the Dynamic FPS I am using is set through the DTSI. I do know there was a "Dynamic FPS" option before where as the one I am using is a different set of commits. Also when I set it to 45FPS or a different higher value, I get a higher CPU Load that correlates with it. Regardless, I am glad you posted. If I am doing something wrong of understand something wrong, I welcome someone to come drop some knowledge on this thread.

Also I appreciate what you are doing with regards to CAF and our OPO. I really look forward to see what else you can do.
[ONE Original Android Development] abhi08638:
I think he meant that the code behind the dynamic refresh rate won't work for our panel. Even though you set the min fps to 45, there won't be any scaling below that value. My guess is it will act as if you hard coded the fps to scale from 45 fps to 63 fps instead of the default min fps to 63 fps
[ONE Original Android Development] RenderBroken:
Right. This is my intent. To only allow the use of 30 - 63 FPS. I don't care to set it through sysfs and be able to adjust on the fly.
[ONE Original Android Development] RenderBroken:
Can I have some users chime in? Does it seem like the UI is smoother or is it just a placebo? If you are unsure about r18 (which is set to 30 FPS) then try my 45FPS build a few pages back. Let me know what you guys think. I can admit I could be wrong. I love trying new things and discussing them. I have not really heard much from you users.