My friend was looking at Viewsonic Tablet running Vegan rom and noticed the miniscule lag when scrolling, especially at the beginning of the scrolling.
This isn't really a huge LAG, but a small jump at the start of the scroll.
I have a Cappy on Serendipity vii rom + kernel (and as is the case on all other roms I've tried), there seems to be a threshold of finger movement before a scroll is registered, whether on the apps list or scrolling the wallpaper.
I did some research and came up with a variable like gesture dip or something. Don't know if this is related.
Just wondering if anyone had a definite answer whether this is a threshold coded in for features like detecting long presses, or whether it was an inherent lag between user interaction and system response.
Some touchscreen drivers do have this threshold. There is no fix but to change the value every time on boot. The kernel needs to be modded to expose the value.
anyone else experiencing slow tracking and movment when using google maps or latitude?
my GF's Wildfire S is perfect while my Galaxy S plus is slow to get GPS if it gets it at all and incredibly slow while using maps or latitude, its like when you used to play a game on a pc and the HDD would start thrashing lagging your game like crazy.
its as if something is trying to access cpu in the background, im getting sick of this phone it was supposed to be a bit of an upgrade to my Wildfire S but all i see is the Wildfire S kick its arse even with that 600Mhz cpu compared to my 1.4Ghz cpu.
can you check please how it runs by clicking the compass icon top right while looking at the map and setting it to follow you so the map moves around you when you turn.
Thanks
Hi BackDaws,
This is a common problem it seems across the SGS+ phones as I have also been facing the same problem. This is what I have found and you may check it at your end aswell.
1. Enter the start and the end direction and the route comes up.
2. Now tap the Blue icon which states your current position and it will now come to the centre of your screen.
3. Then press the cmpass icon on the top right. Now your screen will refresh as you move but now the problem that you will face is that the whole route has been compressed in one screen and you will not be able to make out if there are frequent turn in your rout.
4. Now go the Zoom out tab that is there at the right bottom corner and Zoom it to a level where you can see the route clearly with the turns.
See if this helps... It has helped me but there are times when the refresh rate is slow because of the data transfer rate.
Also do let me know if you find any other way out
Thanks
Sunil
Hi all,
I notice that when sliding through the app drawer of TW3, the finger tends to move some distance before the page starts following the finger. This is especially obvious when then page is stationary and the finger has to move some distance before the app drawer page stutters and starts moving.
After reading most if not all of the discussions in this forum, I understand that our phone sustain certain level of lag in that situation, probably due to the touch mechanism itself or inefficiency in the processor or what not. But I do have an interesting observation: whenever my phone sustains a fresh reboot, it is that time that the app drawer is perfectly lagless and follows even the tiniest movement of my fingers. This snappy phenomena only lasts until I put the phone to standby, i.e. locking the phone. Thereafter it goes back to the condition as mentioned earlier on.
My question is, there's no doubt i9003 has the capability to be lag free in the context of this discussion, but it seems pretty apparent that something is inhibiting the phone from being as smooth as when it first rebooted. Could it be the priority the TW launcher is assigned with, or does the processor clock speed matter in this situation?
P.S. When testing, I made sure that no applications are opened after the fresh reboot, so issues like insufficient memory etc should not be related here.
I noticed the same things, not only when sliding through the app drawer, but also when sliding menus etc. However after a reboot, my phone behaves as always. Maybe you feel it more lagfree because of the high clock speed due to the multiples stuff your phone does on boot. Try to change your governor to performance and see if it behaves like after a fresh reboot. In this way you'll know if your lagfree experience is due to clock speed.
I read a lot of stuff too but nothing was really useful. However I noticed that I feel lags only when the touch of the screen can be interpretated in different ways (for example sliding screens and opening apps), but when touching the screen allows you to do only one thing, like moving things, there are nearly zero lags. For example when you pull down/up your notification bar or when you move a zooomed image in gallery. This make me think that it's more a software problem than a hardware problem and I think that because in some app there are less lags than in others.
I don't know if you read this, but I think it improves the touchscreen, even if the difference is barely noticeable.
TW3 is sludge!
Is there any speed-governor app for the Xoom that can be configured to lock the CPU to 1000MHz whenever the soft input area is active (or better yet, whenever Graffiti input is active), and/or a way to increase the digitizer sample rate?
Historically, Graffiti has been totally unusable on my Xoom. Literally, so low of a sample rate, and so many errors, that I just couldn't use it. I finally got around to unlocking and reflashing my Xoom to CM10 last night, and locking the CPU to 1000MHz makes it work a lot better... but the accuracy is still a cruel joke compared to even my creaky, old Hero overclocked to 711MHz.
It's pretty sad, actually. On the Hero, the digitizer seems to be reporting samples at least 4-16 times as often, and I can get nearly 100% accuracy without even trying. On the Xoom locked to max speed, it seems to do a tiny bit better than my S3 gets with stock, but the sample rate still appears to be absurdly low compared to what it was on the Hero, and feedback seems to lag the actual touch by at least 100-200ms. On the Hero, feedback was literally instant... stroke, and see the pixels turn white INSTANTLY under my fingertip. On the Xoom (locked to max), they start turning white a fraction of a second after I touch the screen, and I can see the last bit of the stroke render a fraction of a second after I lift my finger away. With the stock Xoom rom, it was more like, "draw the character, and see a jagged impression of it sputter into existence about a half-second later... maybe, MAYBE even getting recognized correctly about 70% of the time".
I'm guessing that either the Xoom's digitizer has a limited sample rate, or something in the kernel or driver is limiting the sample rate... but I'm still trying to find a straight answer somewhere about whether/how you can build a custom kernel without losing your ability to run paid Market apps. Or whether it's even necessary to go to that extreme, as opposed to something like a setting that tells Android to increase the sample rate, or not throttle the CPU when an input area is active, or maybe a way to let something like SetCPU identify "soft input area active" as a profile-triggering condition. I'm also pretty sure that the Xoom's kernel (if not recent versions of Android itself) try to treat the existence of a soft input area as an excuse to massively throttle the CPU, on the theory that it's just displaying a picture of a keyboard and waiting for a blunt press. HOWEVER, I'm SURE there HAS to be an equally-official way of defeating that behavior, if only because it would also screw up Android's ability to handle east Asian input methods.
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.