How are CPUs and GPUs different in build? What tasks are handled by the GPU instead of CPU and what about the architecture makes it more suited to those tasks?

1.39K views

How are CPUs and GPUs different in build? What tasks are handled by the GPU instead of CPU and what about the architecture makes it more suited to those tasks?

In: Engineering

13 Answers

Anonymous 0 Comments

During the 80’s and 90’s, computers were commercialized and slowly made their way into people’s homes and got used more and more in businesses. The internet started out, the first online businesses sprouted up.

That meant the chip manufacturers were very busy developing the next generations of CPUs. At first, that meant increasing the *clock speed*: the number of instructions a CPU can handle per second. Around 2004, they ran into a problem though: once they got to around 4 GHz (4 billion instructions per second), they started having a very hard time to get their CPUs working reliably when increasing the speed even more. So they had to find other ways of getting more performance out of the computers they were making.
They briefly experimented with installing 2 CPUs in 1 computer, but that also had all sorts of trouble, mostly related to syncing data between the two. The alternative they came up with, was to integrate 2 CPUs *on the same chip*. That’s what we call a core today.

Now, what is the difference between CPUs and GPUs? A CPU is a chip that can handle all sorts of different tasks: it can do math, it can read and write to/from your hard disk, it can handle data from the internet, it can process the input from your mouse and keyboard, etc. It does a lot of stuff. That also means it’s some really complex machinery, which constrains the number of cores you can fit on a single chip. You could in theory make the chips bigger, but that means all the signals have to travel farther, getting you back into that data syncing problem. Power efficiency is also a big factor. This all means that you usually see CPUs with 2, 4 or 8 cores these days.

GPUs on the other hand have 1 specific goal: drawing graphics. You give them some *textures*, the actual images you want to draw, and the positions and shapes you want them drawn in, and the GPU will do all the math required to figure out the color for each pixel on the screen. That math is not very hard, but you need to do it for millions of pixels, ideally 60 times per seconds. That’s why your CPU struggles with this task: it just can’t handle that number of instructions. A GPU on the other hand, often contains 100s or 1000s of cores, allowing it to perform an incredible amount of math every second. These cores are much simpler than those in a CPU because they only have to do 1 thing.

You are viewing 1 out of 13 answers, click here to view all answers.