The Google Nexus 7 Reviewby Anand Lal Shimpi & Brian Klug on July 26, 2012 11:35 AM EST
The $199 Nexus 7 ships with 8GB of NAND on-board in the form of a standalone eMMC 4.41 package from Kingston. The single package storage solution features NAND and controller, although as you can guess there's no room for DRAM. The NAND in use is MLC although it's not clear whether we're looking at 2 or 3-bits per cell. This basic architecture shouldn't be all that unfamiliar to long time AnandTech readers - the cacheless design is exactly what plagued some of the early MLC SSDs for PCs a few years ago.
More recently users have been noticing very poor performance with ASUS Android tablets whenever there's substantial background IO going on, particularly multitasking while writes are taking place (e.g. downloading a torrent and browsing the web). The slowdowns range from multi-second long pauses to sluggish response time. The video below shows you what can happen on a Transformer Pad Infinity while downloading a bunch of large files in the background:
Even though downloading a large file is a largely sequential write operation, any other action performed while that download is in progress will effectively turn the IO stream from purely sequential to pseudo-random. Most of these eMMC and other cheap MLC NAND flash controllers are really glorified SD cards, primarily optimized for reading and writing large images as if they were used in a camera. What they're not designed for is to run and be used in a full blown multitasking OS. Some manufacturers seem to do a better job of picking their storage solution, and the Kingston eMMC in the Nexus 7 is faster than the Hynix e-NAND ASUS has used in previous tablets. Neither is perfect however. There's a tangible impact on simple multitasking if you're downloading a lot of files or installing apps in the background. Even operations in memory are quite negatively affected by background IO. Take a look at how SunSpider performance is hurt by a background file download:
|SunSpider 9.1 Performance|
|Default||With 2MB/s Background Download|
|Google Nexus 7 (8GB)||1665.9 ms||1984.9 ms|
To put all of this in perspective, I turned to Androbench, a storage benchmark that allows an ok amount of flexibility in configuring the test environment. At its default settings the benchmark varies a bit too much for my liking, but if you up the buffer sizes to 100MB it helps smooth out some of the variance.
Here we're looking at both sequential and random IO, the two sides we pay attention to in our SSD reviews as well. It's not clear to me whether or not Androbench is clamping the random IO to a particular range of addresses or not, but the results are telling nonetheless:
|Androbench (100MB read/write)|
|256KB Sequential Read||256KB Sequential Write||4KB Random Read||4KB Random Write|
|ASUS Transformer Pad Infinity (64GB)||15.9 MB/s||7.13 MB/s||4.90 MB/s||0.22 MB/s|
|Google Nexus 7 (8GB)||23.1 MB/s||8.43 MB/s||4.77 MB/s||0.32 MB/s|
|Samsung Galaxy Nexus (16GB)||26.8 MB/s||7.29 MB/s||7.46 MB/s||0.23 MB/s|
Sequential read/write speed isn't bad, but it's the random write speed that's really a problem. We're talking about write speeds of a couple hundred KB/s. Remember what I said earlier about how multitasking can take an otherwise sequential IO stream and make it look fairly random? I suspect the low random write performance is one reason we're seeing significant slowdowns with background IO. Not all NAND controllers do well with concurrent reads and writes, which could be another contributing factor to poor performance.
Note that for light usage this isn't a problem. Similar to the first generation of affordable MLC SSDs for PCs, as long as you're doing a lot of reading you'll be ok. It's really for the heavier usage models that this is a problem. On a tablet however, simple background installation or downloading of files counts as heavy these days.
The real solution to this problem is to integrate better NAND flash controllers on-board, or even onto the SoC itself. Tablet makers are still mostly focused on cost cutting, but eventually we'll see real SSDs with good controllers in these things. Windows 8 tablets, at least the high end ones due out later this year will be among the first to incorporate real SSDs.
WiFi Performance, NFC
The Nexus 7 includes support for single spatial stream 802.11b/g/n on 2.4 GHz only. That ends up being a PHY rate of 65 Mbps (single spatial stream with no SGI). ASUS has been using AzureWave modules for basically every single one of its tablets, and the Nexus 7 is no exception. Thanks to the FCC test reports, you can see an AW-NH665 module alongside the new NXP PN65 NFC controller. The AW-NH665 includes a BCM4330 inside - remember there are different vendors who will sell you a completed module.
If you're looking for a cost cutting measure, the lack of 5 GHz WLAN support is most definitely one. In fact, the lack of 5 GHz WLAN made for probably one of my most memorably hilarious Google I/O experiences, since the event had multiple signs noting that only devices with 5 GHz WLAN would work well (or at all - 2.4 GHz is unuseable at any major event) on the conference WiFi. To mitigate this, Google hooked up USB OTG to MacBook Air ethernet adapters for its Nexus 7 demo stands, which I of course hijacked for my Galaxy Nexus at one point. More and more, having 5 GHz WLAN in a tablet is an expectation, and soon we'll even start seeing 2x2:2 antenna configurations.
The resulting performance is pretty par for the course when it comes to WiFi speeds among single spatial stream 2.4 GHz only devices. I tested using iperf the same way I do smartphones.
Unlike some of the other ASUS tablets of note, there are no reception issues with the Nexus 7 either. I have no problem getting good reception and see the Nexus 7 fall off the network where I expect it to in my area. I think it's worth being explicit about where the antennas are located since wireless connectivity issues have been a recurring issue for just about every product.
BT/WLAN (red), NFC (blue), GPS (green)
I've gone ahead and marked where the antennas are for BT/WLAN, NFC, and GPS on the case from the FCC teardown photos. Knowing exactly where the NFC coil antenna is located is actually hugely important for correctly positioning the device for beaming or reading tags. It ends up being right behind the "nexus" recessed lettering on the back, but until I saw the antenna in the FCC teardowns I wasn't completely sure. With a smartphone the size makes it relatively forgiving, but tablets are less forgiving about positioning not being exact thanks to the larger size.
The Nexus 7 uses a monolithic Broadcom BCM4751 GPS receiver, which we've seen in other devices like the iPad 2. This isn't the absolute newest broadcom GPS/GNSS, and again I'm sure ASUS was able to secure great pricing for this since the newer GNSS (GPS+GLONASS) modules are making their way into devices right now.
That said, I had no problems with GPS locking quickly from cold and warm starts. I walked around San Francisco with the Nexus 7 using Google Maps (tethered to an SGS3) and saw pretty good performance in the urban canyon scenario. With no occlusions to the sky, performance is excellent, and locks indoors are possible too.