Sign in with
Sign up | Sign in

Android 4.3 Fixes First-Gen Nexus 7 Slowdown Issue

By - Source: AnandTech | B 13 comments

Android 4.3 introduces fstrim which will help the eMMC controller take out the piled up trash.

AnandTech has discovered one feature introduced in Android 4.3 that you won't find in Google's recipe for the latest Jelly Bean: support for fstrim. Although this is good news for all Nexus device owners, it's even more so for first-generation Nexus 7 owners who've felt like tossing the 7 inch paperweight out the window. Android 4.3, it seems, brings new life to Google's former flagship tablet.

Let's rewind a bit. Out of the box, the Nexus 7 (2012) can be a speed demon. It's zippy and fun to use, and produces impressive graphics in Tegra-optimized games. But after a while the performance begins to degrade. It slows to an annoying crawl, thus forcing owners to wipe the slate clean and start over. After that, it's zippy all over again. Rinse and repeat.

AnandTech calls this a "storage I/O aging problem". When the tablet owner deletes a movie, TV episode or uninstalls an app, this isn't communicated directly to the eMMC controller. Thus it still treats the pages in NAND as having actual data even though the blocks are no longer in use. The data structure used by the controller maps both logical locations and physical locations in NAND, so the more locations that have to be tracked, the slower the internal NAND management works.

Enter fstrim. This application slides in between the operating system and the eMMC controller and tells the latter that specific blocks are no longer in use and ready for garbage collection. Thus the controller has less mapping to do and in turn speeds up the storage I/O performance. Fstrim will run once every 24 hours if the battery level is 80 percent or above when unplugged, or at 30 percent when plugged in, and untouched for an hour.

Before the Android 4.3 update, the first-gen Nexus 7's eMMC controller would pile up roadmaps of tracked data. For instance, say the user downloaded and installed a 1.5 GB game from Google Play. Eventually it's uninstalled, and is recognized as such by the operating system which declares that space fee and ready for more data. But until that space is rewritten by new data, the eMMC still considered that 1.5 GB of space as legit data and kept track of it. Now imagine all the deleted apps, movies and TV shows that keep piling up, and you have a busy eMMC controller and a very laggy tablet.

"Without TRIM the controller will track blocks that have data deleted by the filesystem, but the controller still believes it has data it needs to track," the report states. "TRIM is the signaling pathway through which the filesystem and OS can tell the controller that it can now consider those blocks unused and [ready] for garbage collection."

Because this new feature is baked into Android 4.3, all devices with the new OS should see a slight improvement in performance thanks to the new garbage collection. It's unfortunate that fstrim didn't arrive until the new Nexus 7 tablet hit the market, but it's better late than never.

Display 13 Comments.
This thread is closed for comments
  • 2 Hide
    house70 , August 1, 2013 12:06 PM
    This is progress. Happens all the time.
  • -1 Hide
    IndignantSkeptic , August 1, 2013 12:06 PM
    That still doesn't sound ideal, couldn't they do better than that?
  • 0 Hide
    vmem , August 1, 2013 12:22 PM
    Quote:
    That still doesn't sound ideal, couldn't they do better than that?


    err, at least for now, it's supposed to work this way. if you have Trim enabled on your desktop SSD, it does something similar

    OSes are evolving rapidly, and I think we'll see much better long-term solutions in the coming year or two
  • 0 Hide
    house70 , August 1, 2013 12:27 PM
    Quote:
    That still doesn't sound ideal, couldn't they do better than that?


    The tablets' users beg to differ.
  • 0 Hide
    BranFlake5 , August 1, 2013 12:59 PM
    I'm having trouble with the notification light on my Nexus 4 after 4.3 update. Anyone else?
  • 0 Hide
    ddpruitt , August 1, 2013 1:46 PM
    I'm surprised that it took this long. Some sort of trim support should have been there from the beginning.
  • 0 Hide
    jessterman21 , August 1, 2013 3:17 PM
    I can attest - my Nexus 7 has been an absolute joy for the past 3 days. Well, seems like it compared to the last 3 months of lagginess.
  • 0 Hide
    teh_chem , August 1, 2013 8:05 PM
    How does this fix problems? Wouldn't you only really benefit if (a) your device was never really near capacity, and (b) you did a clean install/update directly to 4.3. Otherwise, if it functions like SSDs in desktop OS's, you've lost most of the benefit of TRIM.

    I have noticed zero perceptible performance improvements since I got the 4.3 update.
  • 0 Hide
    kawininjazx , August 2, 2013 6:06 AM
    I had this problem, then I put Cyanogenmod on it and it runs like a champ. I wish they had this option earlier, but at least someone got it working, only took Google a year to fix it.
  • 0 Hide
    Mark Jacobson , August 2, 2013 6:27 AM
    I beg to differ with your praise for 4.3.

    My Nexus 7 has slowed to a crawl SINCE I upgraded to 4.3. Worse still, my screen now refuses to auto-rotate.

    Am I the only person who finds the "upgrade" to be a big step backwards...or did I somehow simultaneously introduce a virus when I upgraded to 4.3?
  • 0 Hide
    Mark Jacobson , August 2, 2013 8:55 AM
    Allow me to revise my comment. I shut down and rebooted my Nexus 7 and it's auto-rotating again. However, it's still slower than before the 4.3 update.
  • 0 Hide
    kujospam , August 2, 2013 9:57 AM
    Shrugs, mine is faster now. I'm not sure if it will be faster while downloading or not though. I find that when my nexus 7 is downloading/updating something in the background, the whole system seems extremely slow.
  • 0 Hide
    jessterman21 , August 2, 2013 10:21 AM
    You have to leave the 2012 Nexus 7 idle while charging over a 24-hour period for TRIM to kick in. I did that for three days after updating to 4.3 and it's back to its original smoothness.

    Also, you do need some free space in storage so it has room to think - maybe 20% or so.