The mobile GPU, or graphics processing unit, is a co-processor designed to accelerate graphics programs, user interfaces, and 3D content on smartphones, tablets, wearables, and IoT devices. Workloads created expressly for the GPU include photorealistic 3D games and "live" graphical user interfaces (GUIs).
Several years ago, the GPU was a desirable component for high-end consumer mobile devices that required cutting-edge technology to maintain their flagship position. The GPU is now a requirement for all mobile application processors and mid/high-end MCUs/MPUs, as graphical displays are now widespread and employed on a wide variety of linked devices. The GPU also contributes to product distinctiveness, allowing businesses to design visually engaging solutions for their intended purpose.
The GPU is a SIMD (single instruction, multiple data) processing engine designed to handle massively parallel applications. GPUs are capable of processing billions of pixels/vertices or floating-point operations (GFLOPS) per second, making 3D graphics one of the best instances of high throughput parallel processing. One or more shaders (SIMD units) process independent vertices, primitives, and fragments at the core of the GPU (pixels). Shaders are computational components that execute 3D graphics programs per vertex, per pixel, or on any other primitive basis.
Programs that adjust the vertex shader attributes of an object to enable control over its position, movement, vertex lighting, and color. Pixel or fragment shader programs can be developed to add special effects to a scene with modifications such as blurring, edge enhancements, or filtering. There are other more recent shader program kinds, such as geometry, tessellation, and computation shaders.
Compute shaders, such as those in OpenGL ES 3.1, are useful for advanced graphics rendering where you can combine 3D and GPU Compute (GPGPU) contexts to add real-world effects such as physics processing (natural wave and wind motions or vivid explosions in a game) and global illumination (better lighting and shadows via computations involving direct and indirect light sources/rays). GPUs can also scale efficiently from a single shader unit to thousands of interconnected, grouped shader units in order to increase performance and parallelism based on the target application, which can range from Internet of Things (IoT) and mobile to high-performance computing (HPC) scientific computing. To handle graphics, OpenCL, OpenVX (vision processing), and other data, high-performance shader architectures can execute billions of instructions each cycle at over 1.2 GHz.
There are two prevalent GPU architectures and image rendering techniques. Both systems employ the same overall pipeline mentioned previously, but their drawing mechanisms are distinct. Tile-Based Deferred Rendering (TBDR) is one way, whereas Immediate Mode Rendering is another (IMR). Each has advantages and disadvantages based on its respective use cases.
In 1995 (pre-smartphone/-tablet era), many graphics companies supported both methods in the PC and game console markets (before smartphones/-tablets). Companies like Intel, Microsoft (Talisman), Matrox, PowerVR, and Oak were members of the TBDR group. On the IMR side, there were companies such as SGI, S3, Nvidia, ATi, and 3dfx. In 2014, TBDR architectures are no longer utilized in the PC and game console markets. IMR is utilized by all PC and platform architectures, including PS3/PS4, Xbox 360/One, and Wii.
IMR's inherent strength as an object rendering architecture that could handle very complex, the dynamic gameplay was the primary reason for this transition (ex. fast motion, FPS, or racing games where scenes or viewpoints are constantly changing frame-to-frame). In addition, as the triangle rate of 3D content increased, TBDRs could not keep up because their architectural limitations required them to continuously overflow their cache memories into the frame buffer memory. Higher triangle/polygon counts let the GPU produce silky smooth and detailed (realistic) surfaces, as opposed to the blocky curving surfaces of older games. The addition of tessellation shaders to IMR brings 3D graphics even closer to reality.
The current mobile market patterns closely resemble those of the PC and gaming console markets, where IMR technology has replaced TBDR. There are two companies in the TBDR market: Imagination and ARM, although ARM is attempting to move toward IMR because it sees major benefits when running next-generation games on mobile. There are Qualcomm, Vivante, Nvidia, AMD, and Intel on the IMR side.
Would you like to know the difference between a cellphone and a smartphone? Read our blog to learn.