Graphics processing unit
Definition
A graphics processing unit (GPU) is an electronic circuit designed to rapidly manipulate and alter memory in order to accelerate the creation of images in a frame buffer intended for output to a display device. GPUs are used in embedded systems, mobile phones, personal computers, workstations, and game consoles. Modern GPUs are highly efficient at parallel computing and are used for a wide range of applications beyond graphics, including machine learning, scientific simulations, and cryptocurrency mining.
History
The concept of a dedicated graphics processor dates back to the early 1980s with chips such as the NEC µPD7220 and the Intel 82786. The term "graphics processing unit" was first popularized by Nvidia in 1999 with the release of the GeForce 256, which was marketed as the world's first GPU. It integrated hardware transform and lighting (T&L) onto a single chip, offloading tasks from the central processing unit (CPU). Throughout the 2000s, companies like AMD (formerly ATI) and Nvidia competed to produce increasingly powerful GPUs, introducing programmable shaders and unified shader architectures.
Architecture
A modern GPU consists of hundreds or thousands of small processing cores grouped into multiprocessors. These cores are designed for single instruction, multiple data (SIMD) operations, allowing them to perform the same operation on many pixels or vertices simultaneously. Key architectural features include:
- Shader cores for vertex, pixel, and compute shading
- A memory interface connected to high-bandwidth video RAM (VRAM)
- A scheduler and cache hierarchy to manage parallel workloads
- Tensor cores (in recent Nvidia GPUs) for accelerated deep learning operations
- Ray tracing hardware for real-time light simulation
Features
GPUs are characterized by their parallel processing capabilities, which differentiate them from CPUs. Common features include:
- High memory bandwidth compared to system memory
- Support for application programming interfaces (APIs) such as DirectX, Vulkan, OpenGL, and OpenCL
- Hardware-accelerated video encoding and decoding
- Multi-GPU configurations (e.g., SLI from Nvidia, Crossfire from AMD) – now largely obsolete
- Integrated vs. discrete GPU designs
Applications
While originally designed for rendering 3D graphics in video games and professional visualization, GPUs are now widely used for general-purpose computing on graphics processing units (GPGPU). This includes:
- Scientific computing and simulations
- Machine learning training and inference
- Data science and big data analytics
- Cryptocurrency mining (e.g., Bitcoin, Ethereum)
- Video editing and rendering in creative software
Major Manufacturers
The dominant GPU manufacturers are Nvidia, AMD, and Intel (with integrated GPUs and recent discrete products). In mobile devices, Qualcomm (Adreno), ARM (Mali), and Apple (custom designs) are major players.