[Q] Choppiness, lag, stutter, screen tearing etc - HTC One S

I am experience a lot of choppiness and a screen tearing like effect with my S4 One S.
I have tried multiple ROMs and kernels none of which seem to solve the issue, however I did notice it particularly bad on CM10 ROMs. I am currently running Viper 2.0 so that's a sense based Jelly Bean 4.1 I have tried "force 2D GPU rendering" to no luck.
Basically on scrolling, particularly noticeable in the launcher screen transitions and app drawer transitions, they start off smooth, then right before the animation finishes there is a little 'jump' where it misses out the end frame or two and jumps straight to the finish. It creates a really irritating laggy stuttery sensation, which makes the phone not feel smooth to use.
I have tried all the launchers you could throw at me, currently using Holo Launcher HD because I can slow the animations right down which makes it smoother, but still has the stutter at the very end...
Is anyone else experiencing these same issues?

Sounds like you got some background app slowing the device down to a halt.
I have none of the issues you are describing, and havnt had it on any rom Ive tried either.

RichardW1992 said:
I am experience a lot of choppiness and a screen tearing like effect with my S4 One S.
I have tried multiple ROMs and kernels none of which seem to solve the issue, however I did notice it particularly bad on CM10 ROMs. I am currently running Viper 2.0 so that's a sense based Jelly Bean 4.1 I have tried "force 2D GPU rendering" to no luck.
Basically on scrolling, particularly noticeable in the launcher screen transitions and app drawer transitions, they start off smooth, then right before the animation finishes there is a little 'jump' where it misses out the end frame or two and jumps straight to the finish. It creates a really irritating laggy stuttery sensation, which makes the phone not feel smooth to use.
I have tried all the launchers you could throw at me, currently using Holo Launcher HD because I can slow the animations right down which makes it smoother, but still has the stutter at the very end...
Is anyone else experiencing these same issues?
Click to expand...
Click to collapse
did you try a factory reset? it can affect wonders
maybe some roms need some time to find the right place in your phone.. my jb runs perfectly smooth after 2days and some reboots.

I always factory reset and full wipe in between flashing my ROMs.
I'm more than positive its not a bag ground process hogging CPU as I have used apps to monitor my CPU usage and it idles nice and low under 10% then shoots up during screen transitions.
I may have made the problem sound worse than it is. Its not like running the phone with the max CPU throttled down to 192MHz which does cause lag and stutter. Its more like, silky smooth everywhere, then suddenly the last frame or two of the animations skip, making it even more obvious and irritating as everything else is so smooth.
It does it with all launchers, and scrolling in apps sometimes doesn't feel smooth. ie you give it a fling, it shoots off lightning fast then as it gradually slows back down to a halt, right before the scrolling stops there is a little 'jump' or 'stutter' giving it an unsmooth feel
I'm going to try flashing a 4.2 ROM and enabling 4x MSAA to see if that will fix it. If not I might upload a video to try and capture the issue. Its almost like Vsync isn't on, or isn't working properly, but when I turn it off it only makes the screen tearing and jitter much worse!

I used AOKP 4.2 which seemed even worse than ever, it was almost like Vsync wasn't doing its job properly, then I enabled "Force 2D GPU Rendering" , "Force 4x MSAA" and "Disable HW Overlays" this greatly improved it so that it was on par with any of the other ROMs I used. However that little stutter was still there.
This ROM/Kernel supported GPU and CPU overclocking. I found out that with both cores forced to maximum speed (eg performance governor) the issues was almost completely eradicated, or extremely hard to notice. But it is just not feasable to run my phone like this. I swear I shouldn't be experiencing this stutter...
Currently running CPU1 on performance and CPU0 on badass (I am assuming CPU1 will sleep when screen is off).

Well, Im running my S with ONDEMAND governor, 1512Mhz max, 384Mhz min. I/O Scheduler is set to CFQ.
On my moms XPeria P I run SmartAssV2 / SIO, and it greatly improved both batterylife and performance on that slow-ass device
I also turned off all Window Animation things in Dev. options and turned on force GPU rendering.
Edit: These settings are applied to both cores.

Related

Default lock-screen lags [TESTING]

Can anyone else verify with me this theory:
I switched from the ripple-effect swipe lockscreen to a more secure dot-based lock screen and since then I have not received any lag upon unlocking the device. I'm wondering if those ripple/light effects are too demanding on the cpu as it tries to ramp up thus causing some stutter/lag that people typically see. Once the governer says "OK! Ramp up the cpu freq!!" it takes a second, lag comes.. then it's gone. But switching off these special lock screen effects is much less demanding for the system to handle.
Try it, let me know what you think.
FWIW:
I'm also using Nova launcher and a slightly tweaked ondemand governer maxxed at 1.5ghz. I also have frozen a ****-ton of bloatware apps.

[Q] Performance concerns

Hi, I'm not really happy about my Moto G LTE performance.
I keep reading everywhere that it's very smooth but this is not the case for me.
I notice quite a lot of scrolling slowing/lagging in almost all apps (even sometimes in the UI menus) I don't have any 3rd application installed (just WhatsApp) and completely stock 4.4.4.
For example, when I scroll through a Whatsapp group chat there are some little jitters, Scrolling the notification drawer lags almost every time but depends on the currently active app. If Chrome is active with some desktop site it can lag very badly.
Chrome performance are quite nice but again, random hiccups for no visible reason.
Interesting thing is that the lags are very random, It sometimes goes away by itself and gets back.
Tried deleting cache partition, tried factory reset, not working. I do notice improvement if I'm on WiFi and not HSPA/LTE.
I tried checking my CPU usage under Developer options and the load average for the system is never going down from 16. Even if I'm in airplane mode with no activity. Do you think it has something to do with my slowness? I'm quite familiar with Linux systems and know that 16 is extremely high for any desktop/server. Is android the same case or this loads are normal?
https://i.imgur.com/vam1Dx2.png
Also here is a screenshot of "Profile GPU rendering -> show as lines" under developer settings when scrolling in whatsapp.
http://i.imgur.com/t1BTNPQ.png
As you can see the framerate is not stable at all and many lags occur.
Would appreciate if someone could check his results with the profile GPU rendering and tell me if it's the same or much better.
Any help will be welcome, Thanks!
I got a little slow down but nothing mayor..howewer you can look my test in arr
Sent from my XT1032 using XDA Free mobile attachment
Are you in the stock or custom rom?
I notice very diffirent performance in many roms. The worst was the stock 4.4.4 of my company (with all the **** of Movistar) and the actuals versions of lollipop...
Recommended:
http://forum.xda-developers.com/moto-g/development/xperience-cyanogen-projectoverkill-t2949592

Seem to have found a solution for lag on 6.0

I seemed to get a lot more lag on 6.0 than from what I remember on 5.1.1. Tried multiple roms and they all felt the same. However after toggling in developer options "force gpu rendering" as well as "disable hardware overlays" on, this phone is like butter now smoother than ever. Hopefully this proves to help others.
Cool, I'll give.it a shot too
Sent from my XT1575 using Tapatalk 2
This did seem to make my phone faster it scores higher in quadrant too.
Still froze on game.
Sent from my XT1575 using XDA Free mobile app
I'm running stock (non-rooted) and I haven't had any lag issues (yet) since updating to 6.0. App transitions especially are incredibly smooth. Still all phones get laggy eventually (I don't care what chipset or software they're running), and this is certainly worth logging for when I do have problems. Thanks.
timde9 said:
I seemed to get a lot more lag on 6.0 than from what I remember on 5.1.1. Tried multiple roms and they all felt the same. However after toggling in developer options "force gpu rendering" as well as "disable hardware overlays" on, this phone is like butter now smoother than ever. Hopefully this proves to help others.
Click to expand...
Click to collapse
thank u sooo much bro now my phone is blazing fast!!!! hope their are no negative effects of these options
timde9 said:
I seemed to get a lot more lag on 6.0 than from what I remember on 5.1.1. Tried multiple roms and they all felt the same. However after toggling in developer options "force gpu rendering" as well as "disable hardware overlays" on, this phone is like butter now smoother than ever. Hopefully this proves to help others.
Click to expand...
Click to collapse
Have you noticed any negative effects on battery life?
Sent from my XT1575 using Tapatalk
Shishir Singhal said:
thank u sooo much bro now my phone is blazing fast!!!! hope their are no negative effects of these options
Click to expand...
Click to collapse
Well, if you force GPU rendering there is a possibility that battery life may take a hit. And if you disable HW overlays you open up the possibility of rendering errors that *may* affect performance in some circumstances.
These are tradeoffs you need to weigh to make sure this will be beneficial to you or not.
I'm running TruPure XMM 2.2 and haven't had any significant lags yet and for me the settings didn't make a real difference.
I don't want to lose extra battery life on something that doesn't change anything FOR ME (=doesn't apply to everyone!).
Thanks for sharing this information though
Why Lag??
timde9 said:
I seemed to get a lot more lag on 6.0 than from what I remember on 5.1.1. Tried multiple roms and they all felt the same. However after toggling in developer options "force gpu rendering" as well as "disable hardware overlays" on, this phone is like butter now smoother than ever. Hopefully this proves to help others.
Click to expand...
Click to collapse
Did we all get defective chipsets??? Why are we the only ones getting lag, but the majority of people are reporting "buttery smooth" performance on Marshmallow...?
Hi guys, I saw on reddit that if you have certain Accessibility services enabled, lag and stutters will occur. For example, Dashlane's Accessibility feature slowed my phone down like crazy. After disabling it, smooth operations persisted. It's weird. I'll get the reddit link.
Edit: somehow can't share the link but I'll quote what OP said.
"I've had the Moto X Pure for two weeks now, and have been experiencing excseive stuttering when doing just about anything. The strange part was some users where experiencing lag while others weren't. Well for those experiencing stuttering while scrolling lists, try this. Go to Settings, Accessibility, and turn off all accessibility services at the top. Should fix lag!"
Sent from my XT1575 using Tapatalk
Zero lag on my phone. I'm running stock, though.
Those two options will cause issue with some games.
Will these settings stick through a reboot, I know the Disable HW Overlays never used to stick. It does make it noticeably smoother. I was planning on returning to LP tonight, and flashing AICP LP to get some smoothness back. It always feels like Android moves backwards when they remove features and get more and more laggy with each rendition! lol
DroidOnRoids said:
Hi guys, I saw on reddit that if you have certain Accessibility services enabled, lag and stutters will occur. For example, Dashlane's Accessibility feature slowed my phone down like crazy. After disabling it, smooth operations persisted. It's weird. I'll get the reddit link.
Edit: somehow can't share the link but I'll quote what OP said.
"I've had the Moto X Pure for two weeks now, and have been experiencing excseive stuttering when doing just about anything. The strange part was some users where experiencing lag while others weren't. Well for those experiencing stuttering while scrolling lists, try this. Go to Settings, Accessibility, and turn off all accessibility services at the top. Should fix lag!"
Sent from my XT1575 using Tapatalk
Click to expand...
Click to collapse
thanks for the tip!
after switching off the accessibility service for lastpass the scrolling is much smoother again ?
nuumuun said:
thanks for the tip!
after switching off the accessibility service for lastpass the scrolling is much smoother again
Click to expand...
Click to collapse
I can attest to this as well actually I remember seeing that article when I was on Lollipop but I just forgot it. Appreciate the reminder it seems to have helped even further. I decided to turn off the hw overlays thing but the force gpu rendering and all accesibilty services off seems to be just as good.
I had horrible lag on everything I did on MM until I put on TruPureX rom. Now it's better than ever. Smooth as silk.
Disabling HW overlays prevents the CPU cores from assisting the GPU in rendering certain things on-screen. The build.prop already forces GPU rendering (as does stock Android) and some form of HW overlay setting.
debug.sf.hw=1
debug.egl.hw=1
debug.composition.type=c2d
These lines are in both 5.1.1 and 6.0 Pure Edition builds. Line 1 is GPU 2D rendering, line 2 is OpenGL ES HW rendering, and line 3 is Core2Duo compositing (using a multicore processor for composition, in addition to the GPU).
If you're rooted, bigger performance gains would be had by raising the throttling temps in thermal-engine-clark.conf in /system/etc. Don't go crazy, otherwise your hand or device may pay the price. Leave the 85C values alone, as the A57s will hit this quickly at 1.824GHz. But, CPU hotplug controls when the 2 A57S and 1 A53 get booted for thermal reasons. Quiet1 and Quiet0 control Cluster 1 (A57s) and Cluster 0 (A53s), respectively.
So ...
A quick test some may perform, so long as nova launcher is installed, is to open the app drawer, scroll or flick down and then immediately click home. Before these settings were applied, I constantly noticed stutter coming out of the drawer. This may seem like a silly test, but there are, in my experience, many moments of stutter in everyday use running the stock roms (my brief run of cm was noticeably smoother.)
I wouldn't say these settings insanely increased performance, but a few of the stutters I had frequently seen in the app drawer or recent menu have pretty much disappeared thus making it somewhat worthwhile.
Sent from my XT1575 using Tapatalk
Jason.DROID said:
Disabling HW overlays prevents the CPU cores from assisting the GPU in rendering certain things on-screen. The build.prop already forces GPU rendering (as does stock Android) and some form of HW overlay setting.
debug.sf.hw=1
debug.egl.hw=1
debug.composition.type=c2d
These lines are in both 5.1.1 and 6.0 Pure Edition builds. Line 1 is GPU 2D rendering, line 2 is OpenGL ES HW rendering, and line 3 is Core2Duo compositing (using a multicore processor for composition, in addition to the GPU).
If you're rooted, bigger performance gains would be had by raising the throttling temps in thermal-engine-clark.conf in /system/etc. Don't go crazy, otherwise your hand or device may pay the price. Leave the 85C values alone, as the A57s will hit this quickly at 1.824GHz. But, CPU hotplug controls when the 2 A57S and 1 A53 get booted for thermal reasons. Quiet1 and Quiet0 control Cluster 1 (A57s) and Cluster 0 (A53s), respectively.
So ...
Click to expand...
Click to collapse
Can you provide your settings? kinda scared to touch because idk which cpus are the a57 core0 core2 or core 4 5?

Addressing screen stutter.

Hi fellow Mate 7 owners. I've seen mention of stuttering here before. The phone is reasonably powerful and it intrigued me as to why it stutters, especially when scrolling. It helped to remove the Huawei launcher after setting up Smart Launcher Pro and de-bloat system apps, but I still saw some stutter so turned animations to. 5, then off altogether. My phone runs quite efficiently but that minor jerkiness bothered me. I've now enabled the "force GPU rendering" setting in developer options and re-enabled animations. It runs a lot nicer. Smooth and fast.
I'm assuming the cause was just that where possible, it tries to run on the 1.3GHz economy processor which is not fast enough for frequent screen redraws where content has to be recalculated.
So, my question to those who are tech savvy with the more complex workings of Android is, can we edit something in the system that tells the phone how to control CPU governing so that it steps up to the 1.8GHz processor easier for a smoother operation?
I don't want to install an extra governor app from Google Play.
Edit:
I've ended up installing Kernel Adiutor (needs root) so that I can alter settings and see how it's affected in case it's possible to alter the kernel permanently.
Changed a few settings with CPU governor and I/O scheduler. Kept forced GPU setting in developer options and animations at 0.5.
Edit:
Uninstalled Kernel Adiutor as I had trouble with settings not all sticking and sometimes performance suffering.
I've now installed EX Kernel Manager and two good monitoring apps by same dev. Better result so far. Settings seem to stick and the phone is more reliable. It's smoother, snappy to use. Another thing this has also benefited is stable bluetooth streaming of music. I used to get dropouts, now it's like it's connected by aux cable. This is a big thing for me as I use it on BT for music a lot. It can multitask whilst streaming music and still not drop out momentarily.
https://play.google.com/store/apps/details?id=flar2.exkernelmanager&hl=en

Touchscreen sample rate and jitter findings

Here's what I've found related to slow scrolling jitter and the touchscreen. When you first open an app, the very first couple slow scrolling swipes produce very smooth screen animation. It will then get jittery but if you exit the app, then reopen, the smoothness will return. Do this experiment in Contacts app to see what I mean.
Now I found this app called "Touch MultiTest" which reads out the touchscreen sample rate as you move your finger on the screen. When you first open it and do a swipe, you see smooth tracking and a solid sample rate reported greater than 120 Hz. However after a couple swipes the dot response becomes jittery and sample rate drops to something around 100 Hz. Closing and reopening the app gets you back to 120 Hz.
So I think this proves the hardware and software touch loop can produce smooth motion, and it's really sampling at 120 Hz. The big question is what exactly degrades after a couple swipes. In the best case it's some driver or software buffer / interrupt handling that degrades. In the worst case it's related to low level hardware issues. I'm hopeful it's software related. By the way somehow Chrome browser always scrolls smoothly with slow swipes. What is Chrome doing differently than all other apps? Just filtering?
Scrappy1 said:
Here's what I've found related to slow scrolling jitter and the touchscreen. When you first open an app, the very first couple slow scrolling swipes produce very smooth screen animation. It will then get jittery but if you exit the app, then reopen, the smoothness will return. Do this experiment in Contacts app to see what I mean.
Now I found this app called "Touch MultiTest" which reads out the touchscreen sample rate as you move your finger on the screen. When you first open it and do a swipe, you see smooth tracking and a solid sample rate reported greater than 120 Hz. However after a couple swipes the dot response becomes jittery and sample rate drops to something around 100 Hz. Closing and reopening the app gets you back to 120 Hz.
So I think this proves the hardware and software touch loop can produce smooth motion, and it's really sampling at 120 Hz. The big question is what exactly degrades after a couple swipes. In the best case it's some driver or software buffer / interrupt handling that degrades. In the worst case it's related to low level hardware issues. I'm hopeful it's software related. By the way somehow Chrome browser always scrolls smoothly with slow swipes. What is Chrome doing differently than all other apps? Just filtering?
Click to expand...
Click to collapse
Have you tried contacting Essential or possibly using their beta feedback form to tell them about your theory/findings?
Our screens sample at 60Hz. We already know this from the AMA's on Reddit. The test app you're using is inaccurate if it reads 120Hz or even 100Hz.
60Hz sampling in of itself shouldn't be a problem either since iPhones (except for the newest ones) sample at 60Hz and everyone knows how smooth they are.
Hopefully there's not some other hardware flaw and it's just Essential's software.
ChronoReverse said:
Our screens sample at 60Hz. We already know this from the AMA's on Reddit. The test app you're using is inaccurate if it reads 120Hz or even 100Hz.
60Hz sampling in of itself shouldn't be a problem either since iPhones (except for the newest ones) sample at 60Hz and everyone knows how smooth they are.
Hopefully there's not some other hardware flaw and it's just Essential's software.
Click to expand...
Click to collapse
I don't put much stock in the AMA response since its so vague and nonspecific and could be referring to screen refresh rate (60 Hz) either intentionally or accidentally.
If new iPads and iPhones sample at 120 Hz, it's entirely possible essential panel is sampling at 120 Hz.
Try using Touchscreen Benchmark to test and you'll be able to verify the actual samples per second. As a point of comparison, the Galaxy S4 samples at 90Hz and the Shield tablet does a whopping 180Hz!
In any case, it's easy to see that it's not refreshing at 100Hz or 120Hz simply by looking at the number of touch samples that actually appear on the screen. Try it on a faster phone and you can see the higher density of touch responses.
Furthermore, you can't reliably discern the sample rate in the first second so trusting the app saying it's 120Hz and dips to 100Hz is even less reliable than the AMA.
ChronoReverse said:
Try using Touchscreen Benchmark to test and you'll be able to verify the actual samples per second. As a point of comparison, the Galaxy S4 samples at 90Hz and the Shield tablet does a whopping 180Hz!
In any case, it's easy to see that it's not refreshing at 100Hz or 120Hz simply by looking at the number of touch samples that actually appear on the screen. Try it on a faster phone and you can see the higher density of touch responses.
Furthermore, you can't reliably discern the sample rate in the first second so trusting the app saying it's 120Hz and dips to 100Hz is even less reliable than the AMA.
Click to expand...
Click to collapse
I invite anyone to do my test and decide for themselves or measure and produce new data. That's what I'm going for here. Not regurgitation of bland statements.
Scrappy1 said:
I invite anyone to do my test and decide for themselves or measure and produce new data. That's what I'm going for here. Not regurgitation of bland statements.
Click to expand...
Click to collapse
I just invited you to use a different test instead of relying on one that doesn't spit out reasonable numbers.
Does it make more sense that the Essential potentially is using a 120Hz touchscreen which Essential won't confirm despite it being a feather in their caps (since even iPhones only got 120Hz recently) or does it make more sense that Essential is using a slower than average (for Android) panel which their software isn't filtering out as well as Apple's software does? Which is more likely to cause jitter and touch latency?
ChronoReverse said:
I just invited you to use a different test instead of relying on one that doesn't spit out reasonable numbers.
Does it make more sense that the Essential potentially is using a 120Hz touchscreen which Essential won't confirm despite it being a feather in their caps (since even iPhones only got 120Hz recently) or does it make more sense that Essential is using a slower than average (for Android) panel which their software isn't filtering out as well as Apple's software does? Which is more likely to cause jitter and touch latency?
Click to expand...
Click to collapse
It's actually that your misunderstanding terminology...
Your mistaking sample rate and refresh rate...
Refresh rate is how many times per second? the screen is redrawn...
Sample rate is how many times per second? the screen reads touches...
No way you can tell the difference between 120hz vs 100hz.
Sent from my PH-1 using Tapatalk
rignfool said:
It's actually that your misunderstanding terminology...
Your mistaking sample rate and refresh rate...
Refresh rate is how many times per second? the screen is redrawn...
Sample rate is how many times per second? the screen reads touches...
Click to expand...
Click to collapse
No, I'm referring to the touchscreen. Obviously the Essential LCD only refreshes at 60Hz (only the Razer and iPad Pro refreshes at 120Hz) but the touchscreen also samples at 60Hz which is common for lower end Androids (90Hz and 120Hz are the other common sampling rates found in Android devices).
The new iPhone X's OLED still refreshes at 60Hz but has a 120Hz sampling touchscreen which is higher than the 60Hz it used to be in other iOS devices (except for the iPad Pro). I also mentioned the Shield tablet sampling at 180Hz and there's no mobile device with a screen refresh that fast either.
LNJ said:
No way you can tell the difference between 120hz vs 100hz.
Click to expand...
Click to collapse
The drop to 100 Hz after a couple of seconds is "indicative of the problem", not that a 100 Hz rate would not be smooth in a properly designed device. Something comes unhinged at the point we see the drop to 100 Hz. Could be touch buffer / event que is not being serviced fast enough due to low level driver or hardware. Also could be some piece of software in critical path starts consuming more time than allowed, leading to non uniform response. Could be actual stuttering of hardware.
When you exit and then restart an app, the touch event pipleline is flushed, so things are fixed again for a couple of seconds.
YouTube app
Scrappy1 said:
Here's what I've found related to slow scrolling jitter and the touchscreen. When you first open an app, the very first couple slow scrolling swipes produce very smooth screen animation. It will then get jittery but if you exit the app, then reopen, the smoothness will return. Do this experiment in Contacts app to see what I mean.
Now I found this app called "Touch MultiTest" which reads out the touchscreen sample rate as you move your finger on the screen. When you first open it and do a swipe, you see smooth tracking and a solid sample rate reported greater than 120 Hz. However after a couple swipes the dot response becomes jittery and sample rate drops to something around 100 Hz. Closing and reopening the app gets you back to 120 Hz.
So I think this proves the hardware and software touch loop can produce smooth motion, and it's really sampling at 120 Hz. The big question is what exactly degrades after a couple swipes. In the best case it's some driver or software buffer / interrupt handling that degrades. In the worst case it's related to low level hardware issues. I'm hopeful it's software related. By the way somehow Chrome browser always scrolls smoothly with slow swipes. What is Chrome doing differently than all other apps? Just filtering?
Click to expand...
Click to collapse
I have noticed that if you launch the camera and then open the YouTube app or whatever you're using where you can see the touch scrolling jitters, the touch scrolling is nice and smooth. Then after some time it comes back. The touch scrolling in Chrome is perfect and I wish it was the same everywhere. For some reason the YouTube app performs the worst for me. Chrome must have received an update a while back since I used to get bad touch scrolling on that too. The thing that worries me is some claim touch scrolling is perfectly smooth on their device. Hopefully that's a case of them not noticing it and not a case of actual hardware differences.
mhajii210 said:
I have noticed that if you launch the camera and then open the YouTube app or whatever you're using where you can see the touch scrolling jitters, the touch scrolling is nice and smooth. Then after some time it comes back. The touch scrolling in Chrome is perfect and I wish it was the same everywhere. For some reason the YouTube app performs the worst for me. Chrome must have received an update a while back since I used to get bad touch scrolling on that too. The thing that worries me is some claim touch scrolling is perfectly smooth on their device. Hopefully that's a case of them not noticing it and not a case of actual hardware differences.
Click to expand...
Click to collapse
Cool tip! I hadn't noticed that. Opening camera then switching to contacts had me scrolling smooth for many minutes. However after a few rounds of tests it lost the magic. I could no longer use camera open first to produce the smooth scrolling. So there are several factors at play here and this could use more investigation. Most of all though this gives me hope the issue can be totally fixed in software.
I'm starting to think the thing that goes bad and causes choppiness is the rendering pipeline. I enabled "Profile GPU Rendering" and then did a screen capture after scrolling my battery stats in settings for both 1) good condition just after launching settings when scrolling is smooth and 2) bad condition that kicks in after a few seconds when things get choppy. The bad condition shows vastly inflated rendering time which blows the 60 FPS (green line) budget. The largest increase is in red (command issue), but EVERYTHING is inflated in the bad condition. What could cause this?
The captures of the good and bad conditions are attached.
Turns out the reason the rendering pipeline starts taking so long is due to the application thread moving from high performance CPU cluster to the low performance CPU cluster. Using the paid version of System Monitor I opened a floating window of CPU load and freq. I then again opened battery settings and scrolled around in the good and bad state. I can see the CPU load is on the high performance cluster right away (5-8) and those guys are running at 2.4 GHz. Hence everything is smooth. When the jitters set in, the load has moved to low performance cluster (1-4) and they are running much lower clock rate < 1 GHz. I do believe this is probably fairly normal android behavior, but it's obviously tied to the slow scrolling jitters for us. It could be a subtle governor or big.LITTLE thread scheduling issue somehow playing into touch screen weirdness I suppose.
The two captures attached show the issue. One was captured right after launching battery settings when things are smooth and CPUs 5-8 are screaming. Other was captured after things went jittery, and here you can see CPU load that was on 5-8 has moved to 1-4, and clock frequency is much lower. (Hovers between 300 - 1000 Mhz)
Scrappy1 said:
Turns out the reason the rendering pipeline starts taking so long is due to the application thread moving from high performance CPU cluster to the low performance CPU cluster. Using the paid version of System Monitor I opened a floating window of CPU load and freq. I then again opened battery settings and scrolled around in the good and bad state. I can see the CPU load is on the high performance cluster right away (5-8) and those guys are running at 2.4 GHz. Hence everything is smooth. When the jitters set in, the load has moved to low performance cluster (1-4) and they are running much lower clock rate < 1 GHz. I do believe this is probably fairly normal android behavior, but it's obviously tied to the slow scrolling jitters for us. It could be a subtle governor or big.LITTLE thread scheduling issue somehow playing into touch screen weirdness I suppose.
The two captures attached show the issue. One was captured right after launching battery settings when things are smooth and CPUs 5-8 are screaming. Other was captured after things went jittery, and here you can see CPU load that was on 5-8 has moved to 1-4, and clock frequency is much lower. (Hovers between 300 - 1000 Mhz)
Click to expand...
Click to collapse
Let's try this
@DespairFactor
GPU governor
rignfool said:
Let's try this
@DespairFactor
Click to expand...
Click to collapse
Well I can tell you it's not all because of the CPU performance since setting GPU governor to performance on Oreo beta 2 completely gets rid of the touch screen jitters for me. I'm running Oreo beta 2, Rey.R3 Kernel and Magisk 15.2. Using EX Kernel Manager to set GPU governor to performance, I have eliminated the touch scrolling microstutters. Try it out for yourself and see! I also set CPU governor to conservative to compensate for the slightly increased battery usage. Phone is blazing now. https://forum.xda-developers.com/essential-phone/development/kernel-rey-kernel-t3723601 is the link to the kernel.
mhajii210 said:
Well I can tell you it's not all because of the CPU performance since setting GPU governor to performance on Oreo beta 2 completely gets rid of the touch screen jitters for me. I'm running Oreo beta 2, Rey.R3 Kernel and Magisk 15.2. Using EX Kernel Manager to set GPU governor to performance, I have eliminated the touch scrolling microstutters. Try it out for yourself and see! I also set CPU governor to conservative to compensate for the slightly increased battery usage. Phone is blazing now. https://forum.xda-developers.com/essential-phone/development/kernel-rey-kernel-t3723601 is the link to the kernel.
Click to expand...
Click to collapse
Thanks for your input! I would go down the root and tweaks path if I didn't have to use my phone for work with the Google device policy and all. Hoping for some jitter improvement in next official stock update.
rignfool said:
Let's try this
@DespairFactor
Click to expand...
Click to collapse
I think we can move the touchscreen to it's own workqueue, but not sure if it'll handle this.
mhajii210 said:
Well I can tell you it's not all because of the CPU performance since setting GPU governor to performance on Oreo beta 2 completely gets rid of the touch screen jitters for me. I'm running Oreo beta 2, Rey.R3 Kernel and Magisk 15.2. Using EX Kernel Manager to set GPU governor to performance, I have eliminated the touch scrolling microstutters. Try it out for yourself and see! I also set CPU governor to conservative to compensate for the slightly increased battery usage. Phone is blazing now. https://forum.xda-developers.com/essential-phone/development/kernel-rey-kernel-t3723601 is the link to the kernel.
Click to expand...
Click to collapse
Post a video. In all likelihood, it's just placebo effect. I've heard time and time again people claiming that that the slow-scrolling stutter is gone. It's never once been proven. Here's a side-by-side comparison vs the Pixel XL.

Categories

Resources