Utilize the Processor
The same processor that gives tablets the superior video processing power needed can also be utilized by an application when needed. For example, the Motorola Xoom has the NVIDIA Tegra 2 processor, which is a dual-core 1GHz ARM Cortex-A9. It has support for the NEON SIMD instruction set, which can accelerate multimedia and signal processing algorithms.
By using the Android NDK, this processing power can be utilized for complex computations in an application such as matrix multiplications. Some examples are using OpenGL ES for transformation of surfaces, which is useful in games and augmented reality, and using fast Fourier transforms, which is useful in sound and video analysis such as voice and facial recognition [ 3 ].
Android applications that seem slow can be profiled and key aspects ported to the Native Development Kit (NDK), where NEON can be explicitly utilized [ 4 ].
The library cpufeatures included with the Android NDK checks the target device’s /proc/cpuinfo file at runtime to determine if the NEON feature is available.
A new concept planned with Honeycomb is a fragment, which is a way to split an application across multiple portions of the screen or even across various devices [ 5 ]. For example, an Android notepad application could have an activity to view a list of existing notes and an activity to edit a note.
On a phone form-factor, only one of these activities is shown at a time (and the hidden activity is paused). On a tablet, both activities could be shown at the same time, running side-by-side.
Until fragments are released, it is only speculation as to whether the thread handling will be transparent to the user or needs to be spawned. In general, though, apps should be designed in a modular fashion so that multiple simultaneous views can be utilized.