Qualcomm Snapdragon 805 vs. Nvidia Tegra K1: The Value of 64-bit on Android

By Ryan Whitwam

The top SoCs are both fantastically fast, but only one is 64-bit. Does that even matter?

Odds are good that if you buy a high-end Android device in the next few months, it's going to be packing either the Qualcomm Snapdragon 805 or Nvidia Tegra K1 SoC. We're at a pivotal moment in Android hardware as OEMs begin gearing up for the switch to 64-bit architectures, but only one of these chips has a 64-bit option. Let's take a look at where Nvidia and Qualcomm are going with their respective platforms, and whether or not you should hold out for a 64-bit device.

ARM, but not from ARM

The overwhelming majority of computing hardware in Android devices is ARM-based. Intel has successfully muscled its way into the market with updated x86 Atom parts. Android supports x86 and a few OEMs make tablets with Atom, but it's nowhere near as popular as ARM. All throughout the recent history of mobile devices, ARM has been the core architecture, but not all ARM chips are created equal.

When we're talking about ARM SoCs (systems-on-a-chip), we're actually talking about more than the CPU component. There's also the GPU, memory controller, digital signal processor, and more. We'll get to that later--the first point of distinction between the Snapdragon 805 and the Tegra K1 is in the way they implement the ARM architecture.

Chip makers have the option of licensing ARM's Cortex cores and building a chip around them. That's what Samsung and many smaller firms do. Qualcomm has for a long time licensed the ARM instruction set, which is ARMv7 for 32-bit and ARMv8 for 64-bit. These licenses are considerably more expensive than just getting a stock ARM core, but it allows Qualcomm to design its own custom CPU core for SoCs, and that's just what it's been doing ever since its Scorpion core for the original Snapdragon SoC in late 2008.

Qualcomm's current custom ARM architecture is called Krait, specifically Krait 450 in the top-of-the-line Snapdragon 805. This allows Qualcomm to squeeze a little more performance out of ARM processors than it could with standard Cortex.

Nvidia has two versions of the Tegra K1, one based on regular Cortex-A15 CPU cores, and another that has more in common with Qualcomm's approach. The version of Tegra K1 in the Nvidia Shield Tablet is the regular ARM 32-bit version, but the upcoming Nexus 9 will debut the first 64-bit part on Android--the Tegra K1 with Denver cores. Like Qualcomm, Nvidia has acquired an ARM instruction set license and designed its own core (Denver).

There are only two Denver cores in the Tegra K1, but early benchmarks are impressive. On raw numbers, K1 is about 30-40% faster than the Krait 450 core. Nvidia is taking a big step making its own CPUs--there are a ton of things that can go wrong when implementing a complete platform like that. However, it allows Nvidia to be the first to reach 64-bit support on Android with the ARMv8 instruction set.

Pushing pixels

With devices coming with ever higher resolution screens, more power is needed to draw all those pixels. And let's not forget about the rapid pace if game improvement--gotta have that. Snapdragon 805 and Tegra K1 both have their own GPUs, but this is Nvidia's turf.

The Snapdragon 805 relies on the Adreno 420 to run the graphics, and it's no slouch. With 128 APU circuits and a clock speed of 500-600MHz, it can manage about 172 Gflops in benchmarks. Both versions of the Tegra K1 have a GPU based on the same architecture as the desktop-class Kepler GPU with 192 CUDA cores capable of 364 Gflops. So in raw numbers, the Tegra is much faster. In practice, it can vary.

Nvidia often works with game developers to build special support in games for its hardware features. Some titles end up Tegra-only, but many simply have an enhanced graphical mode specifically for Tegra chips. Games usually look better on a Tegra-powered device, but the Adreno 420 does fine.

Android and 64-bit

While it's true that Android Lollipop supports 64-bit computing, is it supposed to be better just because that's twice the bits? It's a higher number, so it must be better, right? What 64-bit support in Android actually brings is more addressable memory, faster 64-bit applications, and more efficient code based on the ARMv8 instruction set.

So what does that mean? A 64-bit platform will be able to process more data per clock cycle at the OS level, meaning a smoother experience all around. A heavy OEM skin like TouchWiz could be vastly sped up if it were running on 64-bit hardware. The ARMv8 architecture has notable improvements in battery life as well.

Likewise, apps can be much faster, but only under the right circumstances. Developers will have to code for the new hardware specifically, a transition that might take a little bit. Google is releasing 64-bit versions of all its core apps, though. That's something at least. The problem, however, is that Nvidia is the only OEM with a solution ready to go on 64-bit. ARM has some next-generation Cortex-A53 and Cortex-A57 CPU cores that are 64-bit, but they are only available in limited quantities and have yet to be integrated with any flagship processors.

This all adds up to a slow move to true 64-bit computing on Android. The assortment of hardware out there means that consumers won't start getting 64-bit phones until next year, and it will be a while before enough of the market has switched over for most developers to bother with 64-bit optimizations. You will have the system improvements to look forward to on 64-bit, but Android 5.0 Lollipop is already fantastically fast on a 32-bit SoC. You're not really missing out on anything quite yet.

Right now, the power profile and thermals of Tegra K1 make it suitable only for tablets. That leaves Qualcomm to continue ruling phones, even if it's not 64-bit yet. Thus, your choices don't overlap much right now. It's more a question of buying a 32-bit device or wait it out. it's probably fine to take the plunge on a Snapdragon 805 phone, even with the benefits of 64-bit on the horizon. However, in tablet land, Nvidia might be king now that 64-bit Android has come to town.