What is GPU? learn it in easy way- IOT 4

What is GPU (Graphics Processing Unit)?

“The GPU is a processor that is made up of many smaller and more specialized cores. By working together, the cores deliver massive performance when a processing task can be divided up and processed across many cores.” – intel.in

In simple words, GPU (Graphics Processing Unit) is a processor which has many cores and it is designed to perform a specific task e.g. graphics processing/rendering.
CPU is ideal for most of the general purpose tasks such as surfing the web, creating documents, basic gaming, etc. but CPU performance is good with serial processing. But when tasks like heavy graphics rendering, image and video processing, heavy graphics gaming CPU fails to keep up, here is when GPU comes into the scene with its many cores it can process all the tasks parallely.
GPU helps us with heavy graphics rendering, it improves gaming experiences, it also improves image and video processing/rendering.

CPU vs GPU

Although both CPU and GPU are designed for computing, both of them are silicon based microprocessors,  but both are designed for different purposes.

CPUGPU
Low latencyHigh Throughput
Compute density is lowCompute density is high
Ideal for serial processingBest for parallel processing
Few execution units (ALU)Many parallel execution units (ALU)
Shallow pipelineDeep pipeline
Designed for general purposes like surfing the web, creating documents, etc.Primarily designed for heavy graphics rendering example 3D gaming, image and video editing and rendering.

Basic structure of GPU

stucture of gpu itvoyagers

ALU – Arithmetic Logical Unit

DRAM – Dynamic Random Access Memory

What is the need of GUP?

Earlier our CUPs were capable of rendering images/videos and graphics. As we know that back then the quality of graphics, videos, images and games was very low, and processing/rendering was possible with CPU.
As the quality of graphics increased, video quality was also increasing e.g. now we were talking about 4K videos.
Gaming industries started using ray tracing, high quality texturing, etc. VR (Virtual Reality), AR (Augmented Reality) were making their ways in the market.
Now processing/rendering all of these was very tough for CUP because CUP was built for more general purpose uses, since GPU became a necessity.

Please allow us to explain.

Suppose we want to move this which is in 3D space to another position, then we have to perform something called matrix calculation. 

E.g. In Image 1, the current position of this point is (x,y,z) these coordinates values are stored in matrix format, now if we want to move this point then we have to multiply it’s positional matrix with 3D translation matrix.

In calculation shown in Image 2, the first matrix is 3D translation matrix, second matrix is which stores current position of matrix and resultant matrix is the new positional matrix for that point.

Image 1

gpu-itvoyagers

Image 2

translation matrix

We know that to perform transformation (moving in all directions, increasing and decreasing size and rotation) on any object in game we need to perform matrix calculations. We also know that every object in the game is created using many small planes(triangles or squares).

Following are the 3D transformation matrices. 

matrix-gpu-itvoyagers

Let's take an example

audi 1889698 1920
Image by PIRO4D from Pixabay

We can see that the above car model is designed using square planes, and there are so many vertices, now if we want to move this car in our game then each and every vertex’s positional matrix must be multiplied with 3D translation matrix.

Now a car is just one model in the game there are many other models like surroundings e.g. streets, mountains, trees, roads, etc. and these will also have many vertices.

As the car moves there will be change in surrounding so we have to perform transformation matrix all the time on all the objects in the scene.
This is where things get difficult for the CPU, because the CPU is designed for serial processing and performing matrix calculation continuously needs parallel processing.

Here is when GPU comes into the scene with its parallel processing and many ALUs it can handle continuous matrix calculation and also other aspects like FPS, Ray tracing, etc.

Types of GPU

There are two types of GPU

Integrated GPU

As the name says, GPU is built into the same motherboard with CPU. Here CPU and GPU share the same memory.

It’s also known as IGPs (Integrated Graphics Processors). Integrated GPU are hard to update. This type of GPU can be found in laptops, and Desktop computers/PC.

Discrete GPU

This GPU is a separate component which is added on the motherboard to enhance the performance of the system. Discrete GPU has its own memory, which results in great graphics processing/rendering.

Advantages of GPU

  • Drastic improvement in system performance.
  • Increase in graphics performance(Processing/Rendering).
  • It will enhance gaming experience.
  • We can smoothly connect and run multiple monitors.
  • Much better VR (Virtual Reality) performance.

Basic presentation

References

References book you can buy

Other related IOT topics

We are aiming to explain all topics and concepts of IOT in easiest term as possible.
ITVoyagers-logo
ITVoyagers
Author

Leave a Comment