Other meanings of Graphics processing unit
Computer hardware
A graphics processing unit is computer hardware that accelerates graphics rendering and parallel computation. Designed to perform many similar operations concurrently, it works alongside the central processing unit (CPU) to transform geometry, shade images, manipulate arrays, and execute specialized workloads. GPUs appear as discrete expansion cards, integrated hardware within a processor package, and dedicated components in mobile devices, game consoles, workstations, and servers.
A GPU is a massively parallel processor optimized for applying similar operations to large collections of data. Its design emphasizes throughput rather than the low-latency, branch-heavy execution associated with a CPU.1 A typical GPU contains arithmetic units, registers, local or shared memory, caches, and a memory controller connected to high-bandwidth graphics memory or system memory. Programs are commonly organized as many threads grouped into execution units; NVIDIA describes this model as single instruction, multiple threads (SIMT).2 The hardware may be discrete, with its own board and memory, or integrated into a CPU or system-on-chip, where it usually shares power and memory resources. Performance therefore depends not only on arithmetic capacity but also on memory bandwidth, data movement, workload parallelism, and thermal limits.
Graphics rendering turns scene descriptions into images through a sequence of programmable and fixed-function operations. In a conventional real-time pipeline, vertex processing transforms object coordinates, primitive assembly and rasterization generate fragments, and pixel or fragment shaders calculate colors, textures, depth, and lighting. The resulting pixels are stored in a framebuffer for display. APIs such as Direct3D and Vulkan let software describe resources, shaders, synchronization, and commands without directly programming each hardware design.3 Earlier GPUs relied more heavily on fixed-function stages; programmable shaders made effects such as per-pixel lighting and complex material models practical. Rasterization remains dominant in interactive graphics, while ray tracing hardware in some GPUs accelerates selected operations involving rays and scene geometry rather than replacing the entire pipeline.
GPUs also function as general-purpose parallel processors when an application can divide work into many similar tasks. Frameworks such as CUDA and OpenCL expose kernels that operate over arrays, enabling applications in scientific simulation, image processing, machine learning, signal processing, and numerical analysis.25
Large speedups are possible when thousands of threads perform regular arithmetic with efficient memory access, but a GPU is not automatically faster than a CPU. Conditional branches that make threads take different paths, irregular memory access, small workloads, and transfers across the CPU–GPU boundary can reduce the advantage.4 Specialized units, including tensor-oriented matrix engines on some devices, further accelerate selected machine-learning operations, but their benefits depend on supported data types and software libraries.
GPU capability is shaped as much by its software stack and memory model as by its nominal core count. A graphics driver translates API commands and manages scheduling, memory protection, display output, and compatibility; compute frameworks additionally provide compilers, libraries, and profilers. Integrated GPUs can be efficient for laptops and compact systems because they avoid a separate board and often share system memory, whereas discrete GPUs can supply substantially greater bandwidth at higher power and cost. GPUs are also used for nonvisual tasks such as video decoding, image capture, cryptography research, and database analytics, although specialized accelerators may be more efficient for particular jobs. Portability is another subtle issue: Direct3D, Vulkan, CUDA, and OpenCL expose overlapping capabilities but differ in languages, memory rules, ecosystem support, and hardware coverage.23
GPU performance comparisons are meaningful only when workload, precision, memory behavior, software implementation, and power limits are specified.
Help improve the encyclopedia. Reports go straight to the site manager.