Download presentation
Presentation is loading. Please wait.
Published byOsborn Harris Modified over 9 years ago
1
GPUs – Graphics Processing Units Applications in Graphics Processing and Beyond COSC 3P93 – Parallel ComputingMatt Peskett
2
What We’ll Cover Today COSC 3P93 – Parallel ComputingMatt Peskett A Brief History of the GPU GPU – Definition and difference from CPU Memory – DDR vs. GDDR Uses of GPUs in graphics processing Uses of GPUs outside of graphics processing
3
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Whirlwind Flight Simulator (1951) One of the first ventures into digital computing (previously analog)
4
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Lincoln Laboratory at MIT Whirlwind flight simulator
5
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Whirlwind Flight Simulator (1951) One of the first ventures into digital computing (previously analog) Atari 2600 (1977) Major enhancement in consumer-oriented graphics hardware
6
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Atari 2600 console Basketball (1978)
7
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Whirlwind Flight Simulator (1951) One of the first ventures into digital computing (previously analog) Atari 2600 (1977) Major enhancement in consumer-oriented graphics hardware IBM Monochrome Display Adapter (1981) Produced 720 x 350 resolution
8
History of the GPU COSC 3P93 – Parallel ComputingMatt Peskett Character set of the MDA IBM 5151 with green monochrome text from MDA Basketball (1978) MDA Card
9
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett Specialized for SIMD operations
10
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett A visual distinction: https://www.youtube.com/watch?v=-P28LKWTzrI
11
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett CPU processing core (left) vs. GPU processing core (right)
12
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett GPUs are optimized for floating point operations
13
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett Minimal control infrastructure to enhance throughput
14
What makes a GPU a GPU? COSC 3P93 – Parallel ComputingMatt Peskett CPUs can handle a lot of what a GPU does – but not nearly as well
15
Why have both a GPU and CPU? COSC 3P93 – Parallel ComputingMatt Peskett Executing serial code with a GPU is slower than on a CPU Operating systems and user applications have a large portion of serial code Rewriting applications to utilize GPU is often not worth the investment in time Too much variety in operations; some are best handled by the CPU and others by the GPU
16
GPU Memory vs. CPU Memory COSC 3P93 – Parallel ComputingMatt Peskett DDR – Double Data Rate GDDR – Graphics Double Data Rate
17
GPU Memory vs. CPU Memory COSC 3P93 – Parallel ComputingMatt Peskett Memory architectures (UMA, NUMA, and hUMA)
18
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett The graphics pipeline
19
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett 1) Vector shader
20
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett 2) Projection
21
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett 3) Clipping
22
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett 4) Rasterization
23
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett 5) Pixel shader
24
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett Texture mapping
25
Graphical Applications of GPUs COSC 3P93 – Parallel ComputingMatt Peskett Coherence
26
General Purpose GPUs COSC 3P93 – Parallel ComputingMatt Peskett Origins
27
General Purpose GPUs COSC 3P93 – Parallel ComputingMatt Peskett GPGPU models: Brook+, OpenCL & CUDA
28
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
29
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
30
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
31
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
32
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
33
CUDA Example COSC 3P93 – Parallel ComputingMatt Peskett
34
Additional Resources COSC 3P93 – Parallel ComputingMatt Peskett Intro to Parallel Programming – Using CUDA to Harness the Power of GPUs https://www.udacity.com/course/intro-to-parallel-programming--cs344 GPU Programming for the Rest of Us http://www.clustermonkey.net/Applications/gpu-programming-for-the-rest-of-us.html OpenGL Tutorials (Basic to advanced) http://www.opengl-tutorial.org/ Parallel Computing for Graphics: Beyond Programmable Shading (Course delivered at SIGGRAPH Asia 2008, very interesting and still relevant) http://sa08.idav.ucdavis.edu/
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.