33
By, Nived R MEC, Cochin

GPU - Basic Working

Embed Size (px)

Citation preview

Page 1: GPU - Basic Working

By, Nived RMEC, Cochin

Page 2: GPU - Basic Working

ContentsIntroduction

Need for a GPU

CPU vs GPU

Components of a GPU

GPU Pipeline

Future Advancements

Applications

Conclusion

Page 3: GPU - Basic Working

Introduction

A dedicated parallel processor optimized for accelerating graphical computations.

Like the CPU (Central Processing Unit), it is a single-chip processor.

Page 4: GPU - Basic Working

Need for a GPUTo provide a separate dedicated graphics resources including a graphics processor and memory.

To relieve some of the burden of the main system resources.

Page 5: GPU - Basic Working

Offloading compute-intensive portions of the application to the GPU

Page 6: GPU - Basic Working

GPU vs CPU

Page 7: GPU - Basic Working

GPU - highly paralleloperation GPU has many executionunits

GPU has faster memory interfaces as they need to shift around a large amount of data.

GPUs have much deeper pipelines

GPU vs CPUCPU executes programs serially.

CPU has fewer execution units

Page 8: GPU - Basic Working

GPU vs CPU Architecture

Page 9: GPU - Basic Working

WITHOUT GPU

WITH GPU

Page 10: GPU - Basic Working

Components of a GPU❖ Graphics Processor Mainly 2 configurations:

○ Graphics coprocessor : Independent of CPU

○ Graphics accelerator: Based on Commands from CPU

Page 11: GPU - Basic Working

Components of a GPU❖ Memory: Dual ported memory

❖ Graphics BIOS

❖ Digital-to-Analog Converter (DAC)

❖ Display Connector: VGA connector

❖ Computer (Bus) Connector: AGP

Page 12: GPU - Basic Working

GPU Pipeline

The GPU receives geometry information from the CPU as an input and provides a picture as an output.

Page 13: GPU - Basic Working

Input assembler stageThis stage is the communication bridge between the CPU and the GPU.

It receives commands from the CPU and also pulls geometry information from system memory.

It outputs a stream of vertices in object space with all their associated information.

Page 14: GPU - Basic Working

Vertex ProcessingThe vertex-shader stage processes vertices, typically performing operations such as transformations, skinning, and lighting.

A vertex shader always takes a single input vertex and produces a single output vertex.

Page 15: GPU - Basic Working

Triangle SetupIn this stage geometry information becomes raster information (screen space geometry is the input, pixels are the output)

Page 16: GPU - Basic Working
Page 17: GPU - Basic Working
Page 18: GPU - Basic Working

Triangle Setup (Contd…)Prior to rasterization, triangles that are backfacing or are located outside the viewing frustum are rejected.

The rasterizer clips primitives, prepares primitives for the pixel shader, and determines how to invoke pixel shaders.

A pixel is generated if and only if its center is inside the triangle

Page 19: GPU - Basic Working

Pixel ProcessingEach pixel provided by triangle setup is fed into pixel processing as a set of attributes which are used to compute the final color for this pixel

The computations taking place here include texture mapping and math operations

Page 20: GPU - Basic Working
Page 21: GPU - Basic Working

Output Merger StageThe output-merger stage combines various types of output data (pixel shader values, depth and stencil information) to generate the final pipeline result.

Page 22: GPU - Basic Working
Page 23: GPU - Basic Working
Page 24: GPU - Basic Working

Programmability in GPU PipelineIn current state of the art GPUs, vertex and pixel processing are now programmable

The programmer can write programs that are executed for every vertex as well as for every pixel

This allows fully customizable geometry and shading effects that go well beyond the generic look and feel of older 3D applications

Page 25: GPU - Basic Working
Page 26: GPU - Basic Working

Looking ForwardBigger and faster (more cores, more FLOPS) – 2 TFLOPs today, and counting

Addition of (select) CPU-like features – More traditional caches

Tight integration with CPUs (CPU+GPU hybrids).

Completely programmable hardware.

Page 27: GPU - Basic Working

Applications

Page 28: GPU - Basic Working
Page 29: GPU - Basic Working

Shading Structures

Page 30: GPU - Basic Working

Global Illumination

Page 31: GPU - Basic Working
Page 32: GPU - Basic Working

Conclusion● Graphics Processing Unit is not a wonder that this

piece of hardware is often referred to as an exotic product as far as computer peripherals are concerned.

● By observing the current pace at which work is going on in developing GPUs we can surely come to a conclusion that we will be able to see better and faster GPUs in the near future.

Page 33: GPU - Basic Working