Diff: Graphics processing unit
Comparing revision #3 (2024-01-12 02:59:46) with revision #4 (2026-06-22 14:04:09).
| Old | New |
|---|---|
[[File:Gtx1050.png|alt=A low profile GTX 1050 graphics card. Transparent PNG.|thumb|A low profile GTX 1050 graphics card.]] |
|
A '''Graphics Processing Unit (GPU)''' is a specialized electronic circuit designed to accelerate the rendering of images and videos on a display device, primarily a computer monitor or screen. It is an integral component of modern computing systems, contributing significantly to graphics rendering, parallel processing, and computational tasks. |
|
==Overview== |
|
===Purpose=== |
|
The primary purpose of a GPU is to handle and accelerate the complex mathematical calculations required for rendering images and videos. Unlike a Central Processing Unit (CPU), which is designed for general-purpose computing, a GPU excels in parallel processing tasks, making it well-suited for graphics-related computations. |
|
===Parallel Processing=== |
|
A distinguishing feature of GPUs is their ability to perform parallel processing, where multiple tasks are executed simultaneously. This is particularly beneficial for graphics rendering, as rendering involves processing a large number of pixels and vertices concurrently. |
|
==Architecture== |
|
===Streaming Processors=== |
|
Modern GPUs consist of multiple streaming processors (also known as CUDA cores in Nvidia GPUs and Stream Processors in AMD GPUs). These processors work in parallel to perform calculations, enabling the GPU to handle complex graphics computations efficiently. |
|
===Memory=== |
|
GPUs have dedicated video memory (VRAM) used for storing textures, frame buffers, and other graphics-related data. High-bandwidth memory (HBM) and Graphics Double Data Rate (GDDR) are common types of memory used in GPUs. |
|
===Graphics APIs=== |
|
Graphics APIs (Application Programming Interfaces) like DirectX and OpenGL serve as communication interfaces between software applications and the GPU. These APIs allow developers to leverage the capabilities of the GPU for graphics rendering. |
|
==Applications== |
|
===Gaming=== |
|
GPUs play a crucial role in gaming, rendering realistic 3D graphics and providing smooth gameplay experiences. High-end GPUs are sought after by gamers for their ability to deliver high frame rates and detailed graphics. |
|
===Professional Graphics=== |
|
In professional settings such as graphic design, video editing, and 3D modelling, GPUs accelerate rendering processes, enhancing productivity and reducing the time required for complex computations. |
|
===Scientific and Computational Tasks=== |
|
GPUs are increasingly used for scientific research and computational tasks. Their parallel processing capabilities make them well-suited for applications like simulations, data analysis, and artificial intelligence. |
|
==Evolution== |
|
===Graphics Accelerators=== |
|
Early GPUs were often referred to as graphics accelerators. These dedicated graphics cards were separate from the motherboard and provided enhanced graphics capabilities compared to integrated graphics solutions. |
|
===Integrated Graphics=== |
|
Modern CPUs often include integrated graphics, providing basic graphical capabilities. While suitable for everyday tasks, dedicated GPUs are preferred for demanding graphics applications and gaming. |
|
===Ray Tracing=== |
|
Recent advancements include ray tracing technology, which simulates the behaviour of light to create more realistic lighting and reflections in graphics. Ray tracing is computationally intensive and benefits from the parallel processing power of GPUs. |
|
==Manufacturers== |
|
Leading manufacturers of GPUs include [[Nvidia]], [[Advanced Micro Devices (AMD)|AMD]], and [[Intel]]. These companies produce a range of GPUs catering to different market segments, from gaming enthusiasts to professionals in various industries. |
|
==Future Trends== |
|
The future of GPUs involves continued advancements in parallel processing, memory technologies, and efficiency. Emerging technologies such as real-time ray tracing and AI-based enhancements are expected to further elevate graphics capabilities. |
|
[[File:Gtx1050.png|alt=A low profile GTX 1050 graphics card.|thumb|A low profile GTX 1050 graphics card.]] |
|
'''A graphics processing unit''' ('''GPU''') is a processor designed to handle graphics and other highly parallel workloads. GPUs are best known for drawing images, video, and 3D scenes, but modern GPUs are also used for scientific computing, machine learning, video encoding, simulation, data analysis, and other tasks where the same operation can be applied to many pieces of data at once. |
|
A GPU may be built into a processor, fitted as a separate graphics card, included in a console, or integrated into a phone, tablet, workstation, server, or embedded device. |
|
== Purpose == |
|
The central processing unit is usually built for flexible general work, fast branching, operating system tasks, and low-latency control. A GPU is built around wide parallel throughput. It can process large numbers of pixels, vertices, shader operations, matrix calculations, or compute jobs at the same time. |
|
This design is useful for graphics because an image contains many pixels that can be processed in parallel. It is also useful outside graphics when an application can divide a problem into thousands or millions of similar operations. |
|
== Integrated and Discrete GPUs == |
|
An integrated GPU shares a package or system memory with the main processor. Integrated graphics are common in laptops, office PCs, handheld devices, and low-power systems. They are efficient and compact, but usually share power and memory bandwidth with the CPU. |
|
A discrete GPU is a separate chip, often mounted on a graphics card with its own video memory. Discrete GPUs are common in gaming PCs, workstations, render nodes, and accelerated servers. They can draw more power and require more cooling, but they usually provide stronger graphics and compute performance. |
|
== Architecture == |
|
GPU designs vary by manufacturer and generation, but most modern GPUs contain many execution units arranged for parallel work. A graphics pipeline may include stages for geometry, rasterisation, shading, texture sampling, blending, and output to a frame buffer. |
|
Video memory stores frame buffers, textures, geometry, shader data, and other resources. Higher memory bandwidth is important because graphics and compute workloads often move large amounts of data. |
|
Modern GPUs may also include: |
|
* Ray tracing hardware for lighting, reflections, and acceleration structures. |
|
* Video encode and decode blocks. |
|
* Display controllers. |
|
* AI or matrix acceleration units. |
|
* Cache systems tuned for graphics and compute access patterns. |
|
== Software Interfaces == |
|
Applications usually reach the GPU through an application programming interface. Major graphics and compute interfaces include: |
|
* '''DirectX''', used mainly on Microsoft platforms and Xbox. |
|
* '''Vulkan''', a cross-platform graphics and compute API from Khronos. |
|
* '''OpenGL''', an older but widely deployed graphics API. |
|
* '''Metal''', used on Apple platforms. |
|
* '''CUDA''', NVIDIA's parallel computing platform and programming model. |
|
* '''OpenCL''', a cross-platform compute framework. |
|
The API does not replace the GPU driver. The driver translates application requests into commands that the hardware can execute. |
|
== Uses == |
|
GPUs are used in several areas: |
|
* '''Games''': drawing 2D and 3D scenes, shaders, lighting, post-processing, and high frame rates. |
|
* '''Video and media''': playback, encoding, decoding, colour conversion, and editing previews. |
|
* '''3D creation''': modelling, rendering, animation, visual effects, CAD, and digital content work. |
|
* '''Scientific computing''': simulations, numerical models, molecular work, weather models, and data processing. |
|
* '''Machine learning''': training and running models that use large matrix operations. |
|
* '''Servers and cloud systems''': accelerated compute, virtual desktops, media processing, and AI workloads. |
|
== Manufacturers == |
|
NVIDIA and AMD are major suppliers of discrete GPUs for gaming, workstations, and servers. Intel supplies integrated graphics in many processors and also sells Intel Arc discrete GPUs. Apple, Qualcomm, Arm partners, and other companies supply GPUs in phones, tablets, laptops, consoles, and specialised systems. |
|
== See Also == |
|
* [[Intel]] |
|
* [[PlayStation_3]] |
|
* [[Microsoft_Azure]] |
|
== References == |
|
* [https://www.intel.com/content/www/us/en/support/articles/000057824/graphics.html Intel: Integrated graphics and discrete graphics] |
|
* [https://blogs.nvidia.com/blog/2009/12/16/whats-the-difference-between-a-cpu-and-a-gpu/ NVIDIA: CPU vs GPU] |
|
* [https://docs.nvidia.com/cuda/cuda-programming-guide/index.html NVIDIA: CUDA Programming Guide] |
|
* [https://www.amd.com/en/products/graphics/desktops/radeon.html AMD: Radeon graphics] |
|
* [https://www.intel.com/content/www/us/en/products/details/discrete-gpus/arc.html Intel: Arc graphics] |
|
* [https://learn.microsoft.com/en-us/windows/win32/directx Microsoft Learn: DirectX graphics] |
|
* [https://www.vulkan.org/ Vulkan: Cross-platform graphics and compute API] |
|
[[Category:Technology]] |
|
[[Category:Computing]] |