CPU, GPU, SoC and FPGA are four kinds of processor, the chip that computes. Each is built for a different sort of work. A CPU, the central processing unit, does many different tasks, one after another, very fast. A GPU, the graphics processing unit, does the same sum on thousands of numbers at once. An SoC, a system-on-chip, puts a CPU, a GPU and other parts together on one chip. An FPGA, a field-programmable gate array, has circuits that can be rewired after it is made.
All four are built from transistors, tiny electrical switches, with billions of them on one chip. The transistors are grouped into cores. A core is the part of a processor that reads instructions and carries them out.
Here is how the four differ. A CPU has a few large cores, from about 8 in a laptop to more than 100 in a large server. Each core is built for varied steps: read a file, compare two values, choose what to do next. It runs the operating system and the apps. A GPU has thousands of small, simple cores. It was built to work out the colour of millions of pixels at once, which is the same sum repeated. Training and running AI models needs exactly that kind of arithmetic: multiplying large tables of numbers. So GPUs now do most AI work. An SoC holds a whole system on one piece of silicon: a CPU, a GPU, an AI engine, the modem that connects to the mobile network, and more. Putting them together saves space and battery power, so every smartphone runs on a system-on-chip. An FPGA is a grid of small logic blocks whose connections are set by a file loaded each time the chip is switched on. Load a different file, and the same chip becomes a different circuit. It is slower and costlier per chip than a fixed design, but it can be changed.
Take, for example, a train-booking website at 10 a.m., when Tatkal booking opens. Its servers' CPUs handle each request in turn: check the seat, take the payment, issue the ticket.
Consider an AI lab training a language model. It uses thousands of GPUs, because the training is almost entirely large multiplications of numbers.
Say a team is designing a new chip. Before the design is manufactured, the team loads it onto FPGAs, or onto a hardware emulator, and runs real software on it to find mistakes.
How do these four differ from an ASIC, an application-specific integrated circuit? An ASIC is built for one job only, and cannot be rewired. It is the fastest and most efficient option for that job. But designing one costs hundreds or thousands of crores of rupees, so it pays off only when it is used in very large numbers. A custom AI ASIC, built for one cloud company's work, is one example. AI accelerators in general are built on the same idea.
Appears in
- System-on-chip (SoC)↗ Smartphone hardwareA phone's system-on-chip puts a CPU, a GPU, an AI engine and the modem on one chip, to save space and battery power.
- GPU↗ AI and data centre chipsA data-centre GPU uses thousands of small cores to do the same multiplication on many numbers at once, which is the arithmetic that AI training needs.
- CPU↗ AI and data centre chipsA server CPU uses a few large cores to run the operating system and handle varied requests, one step after another.