I wanted an Android tablet and bought the Lenovo Yoga Tab 3 Pro for its great hardware – kickstand, long battery life, Dolby Atmos sound, comfortable to hold.
But its performance is abysmal. Firefox simply exits if you browse most web pages, and Firefox Sync fails to run in the background. It struggles to run more than one program at a time, so if you bounce between apps the tablet has to reload each one. This sounds like insufficient working memory (RAM) in this 2 GB tablet: small individual apps run fast because this tablet has a fast CPU, but it can’t keep lots of things going at once. Yet if you tap the recent apps square and then the broom icon, the tablet reports around 1270 MB free.
How to get to memory details
It’s easy to get more details on memory consumption in Android 5.1:
- Open Settings > About tablet/phone (sometimes in the System category. every Android device seems to organize Settings differently)
- Tap “Build number” seven times to enable Developer mode (you get a nice countdown tooltip)
- Go back to Settings and you’ll see Settings > Developer options (also often in the System category), open it.
- Tap “Process Stats (Geeky stats about running processes)”
- Tap the colored horizontal bar to get to Memory Details
Memory details will report how much time Android spends in various memory states. In the last 90 minutes my %*$&^*#&@! Yoga Tab 3 Pro 2GB model spent 41 minutes in low memory and 51 minutes in critical. My kernel size is 1.2GB, kernel caches is 725MB. These numbers are far worse (bigger) than any other Android device I have (nothing else spends more than a few seconds in critical even in intense use) and I believe they explain why this tablet kills background processes and multi-tasks so poorly.
The other thing you can do in Settings > Developer options is enable “Show all ANRs (Show App Not Responding dialog for background apps).” When I do this I get alerts that Google Play stopped updating, that Lenovo’s “VIBE UI service” died, that Facebook had a problem, etc. because the tablet is killing bits of software running in the background to keep the app you’re staring at working. I enabled this on my Moto X phone and never see such alerts on it. The Google Play failures meant that I went weeks without getting newer versions of apps, until I held the power button and chose Restart and let the tablet spend 30 minutes updating everything before touching it.
I considered returning the tablet during the exchange period but I was focused on getting Firefox Sync to work (so I could use my remembered passwords and form field entries and share my bookmarks), and when I got that to work I mistakenly thought my problems would be over.
Lenovo’s response to this has been abysmal. It shipped an update that enabled “ZRam swap” (compressing contents of overflow memory) and had the nerve to mark the humongous thread Lenovo Yoga Tablet 3 Pro: Serious memory issues (bug report) (64 pages of complaints) on its forums as “Solved.” No engineer with any understanding of Android internals has participated in the thread, I assume whoever worked on Lenovo’s Android system software only speaks Chinese and/or is kept far from customers. A Lenovo insider promised an update to Android 6.0 (Marshmallow) by December 2016 in the thread Lenovo Yoga Tab 3 Pro and Android 6 update (now up to 42 pages!), that date came and went. But unless Lenovo addresses what makes this tablet consume so much memory, a new version of Android won’t necessarily fix the problem.
Lenovo has released a new version of this tablet with 4 GB of RAM. That should be enough to solve the problem, so now I have to consider how to force them to take back this piece of crap and exchange it for something that works.
Customers have posted all kinds of fixes for this: disable encryption, turn off visual effects, change the launcher, remove a plugged-in micro SD card, free up storage. The problem is any change that involves closing things or restarting appswill give you the impression that the problem is solved, because it frees up a little more memory at first. It’s the interaction between apps that suffers.