1/13
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What is a Graphics Processing Unit (GPU)?
Designed to handle more complex mathematical and geometric calculations required for graphics rendering
On average, have more transistors and a larger density of computing cores with more ALU than a normal CPU
It is a specialised processor designed to handle computations related to images, video, and graphics rendering
Also used in AI, data science, and scientific computing
Like "graphic engines" that help computers draw faster
GPU vs CPU
Feature | CPU (Central) | GPU (Graphics) |
Purpose | General-purpose processor designed to handle a wide variety of tasks Optimised for sequential task execution and complex logical operations Ideal for running OSes, apps, and general computing tasks | Specialized processor designed for parallel data processing Developed for rendering graphics but now used for ML and video processing Optimized for tasks requiring high throughput |
Architecture | Fewer cores (2–64) Each core is highly powerful and optimized for single-threaded performance Features a large cache memory for faster access to frequently used data | Thousands of smaller, less powerful cores Designed for parallel processing of large data sets Limited cache per core compared to CPUs(high-speed memory) |
Performance | Performs better for tasks requiring high sequential processing or logic Handles I/O operations and general-purpose tasks effectively | Delivers superior performance for tasks that can be parallelized High floating-point calculation performance - ideal for simulations and AI workloads |
Parallelism | Designed for low to moderate levels of parallelism (multi-threading or multi-core) | Massively parallel architecture, ideal for handling thousands of threads simultaneously |
Memory | Access to large system memory (RAM) and a larger cache per core for fast data retrieval Lower memory bandwidth compared to GPUs | Uses high-speed, specialized memory High memory bandwidth enables fast data transfers during parallel processing tasks |
Power Consumption | Consumes less power compared to GPUs for equivalent workloads | Consumes more power than CPUs, especially under heavy loads |
Applications | Best for general-purpose tasks like running OS, browsing, word processing, and sequential applications | Best for specialized, parallel tasks like gaming, video rendering, machine learning &simulations Used in AI, NNs & high-performance computing |
Cost | Relatively cheaper for general-purpose computing | More expensive, especially high-end GPUs used in gaming, AI, or data centers |
What do GPUs Accelerate?
Rendering 2D & 3D images
Image transformations
Lighting, shading, textures
Motion and frame calculation
Real-time updates (for games, simulations, etc)
GPU Architecture Basics
Thousands of small cores for parallel processing
Memory blocks (VRAM – Video RAM) to store pixel & vertex data
Shaders: Small programs run on GPU to determine lighting, colour, etc
Types of GPU
Dedicated GPU :
Separate hardware (card) installed in desktops
NVIDIA RTX 4080
Integrated GPU:
Built into the CPU
Uses shared memory
Intel UHD Graphics
Cloud GPUs:
Provided by cloud services for remote computing
Used in AI and large simulations
Shaders
Programs which run on the graphics card to do something and there are lots of different kinds
Types of Shaders
Pixel/fragment shaders: these are run for every pixel on the screen; eg, change colour or brightness
Vertex shader: run for every vertex being rendered to transform the 3D coord into a 2D screen coord; eg, normal perspective transform, distortion effect
Geometry shader: run for every primitive (eg, triangle); eg, tessellate for smoother curves, do tricks for shadows
Why are Shaders important?
They allow developers to:
Simulate lighting and shadows
Create water, fire, fog, and glass effects
Apply textures (images) to 3D models
Animate objects in real-time
Shader Languages
Language | Used With | Purpose |
GLSL | OpenGL | High-level shading language based on C Widely used in games and simulations |
HLSL | DirectX (Windows) | Used in many PC/console games |
Cg | NVIDIA GPUs | Cross-platform (now outdated) |
Rendering
converting 3D models into 2D images
How do GPUs support in Rendering
Project 3D → 2D
Handle colour blending
Light/shadow calculation
Frame buffering
Result: Smooth, real-time visual output in games and software
Popular GPUs in Graphics
Nvidia GeForce
Common in gaming and rendering
Technologies: RTX (Ray tracing), DLSS (AI upscaling)
AMD Radeon
Good performance for budget
Supports OpenCL and DirectX
General Purpose GPU (GPGPU)
This was the idea that you could accelerate non-graphics programs using a graphics card if they happened to use the same calculations
This had to be done via “tricks” like encoding values into textures, uploading them, calculating the answer into a new texture, and downloading and decoding that into your data
Lots of overhead but could still be faster
Very quickly people and manufacturers realised this was a good thing and create ways of doing this without “tricks”
Why GPU is Important for you
Essential to Modern AI and ML due to their ability to manipulate large data efficiently
Essential for graphics and game development, understanding them is key in game development area
Used in Cloud & Data Center Environments, it helps to use cloud resources efficiently
Understand parallel algorithms (write GPU code using OpenCL) helps to understand parallel algorithms, memory hierarchy, and optimization, which are highly valuable for performance-critical applications
Expands Career Opportunities Proficiency in GPU computing opens doors in: AI/ML engineering, Data science, Scientific computing and Graphics and visualization
Foundation for Future Technologies - Emerging fields like quantum simulation and AR/VR systems rely on GPU - Understanding GPUs prepares for future tech trends