NVIDIA Tegra 2 review and multi-core support in Android


If you are interested in the down and dirty details of the latest NVIDIA Tegra 2 dual-core platform, Anandtech has just posted a fantastic article which you can find here.

The article covers the LG Optimus 2X which is the first phone to support NVIDIA’s Tegra 2 dual-core SOC. There are the usual benchmarks which show strong performance increases across the board. There are also a number of other interesting tidbits including Android multithreading support, floating point performance, and memory architecture. I’ll give a quick summary of the most interesting facts as I see them.

Android being based upon the rock solid Linux kernel supports multiple CPUs, but there has been a question as to how Android would take advantage of this capability. Using the dmesg utility they were able to determine that the Linux kernel within Android booted with Symmetric Multi-Processor (SMP) enabled allowing full access to both CPUs. Also Android is natively multithreaded with such components such as the UI running in separate threads. Android can therefore take immediate advantage of multi-core platforms such as Tegra 2 when it comes to things such as multitasking and UI responsiveness. To see performance benefits at the application level the apps themselves will of course have to be written to take advantage of multiple processors.

The memory controller is very efficient and since it is paired with DDR2 and 1MB of L2 cache, the Tegra 2 platform should have fewer memory bottlenecks. The 512 MB of RAM in the Optimus 2X itself seems to be distributed with first 384 MB for general RAM, and the remaining 128 MB dedicated to the GPU. The GPU being NVIDIA’s powerful integrated GeForce ULV part.

Floating point performance should be improved as the ARM A9 FPU is fully pipelined. While this may help you in Linpack benchmarks, you won’t likely see any improvement in real world application performance.


About Author