As science develops around us, technology often has had to catch up. There’s been an exponential increase in the processing power of computers in the last couple of decades all thanks to the new applications that keep popping up. Each of these applications has specific use cases which might not be catered by one type of processor. For example, most of your might have a dedicated graphics card or GPU to handle graphics-intensive tasks and then, of course, a CPU at the core of your computer.
However, it doesn’t end there. Once again, a new use case has asked for a new type of processing unit — the Tensor Processing Unit or TPU. Necessity is the mother of invention, and that definitely is the case here.
So what is a TPU, and how is it different from our traditional CPUs and GPUs? Read on to find out.
Also read: Gigabyte vs Gigabit: What’s the difference?
Central Processing Unit or CPU
I don’t think I need to explain this. Almost every person who has worked on a PC would know about CPUs. It’s the heart of any device. From the smartphone or computer you’re reading this on to the most powerful supercomputers on the planet.
CPUs are responsible for all the mathematical and logical operations going on inside your computer. It’s efficient at its job and can solve pretty much every computational problem in a general fashion.
The cache, the memory design and the entire architecture of the CPU are built around this purpose. CPUs are capable of processing tens of operations per cycle. It has an implicitly managed memory subsystem architecture and is produced by a bunch of manufactures. Data dimensions are usually 1 x 1 data unit.
Basically, everything about the CPU gives out a general-purpose, one size fits all vibe.
Graphics Processing Unit or GPU
Now we’re wading into specialisation territory. The gamers reading this will know exactly what I mean.
However, it’s a common misconception that GPUs are only meant to enhance gaming performance. Yes, they do contribute largely to how games or graphics, in general, are run on a computer but that’s simply because that’s the type of task they’re designed to do.
Graphics cards also help run specialisation software like photo/video editing, animation, research and other analytical software, which need to plot graphical results with a huge amount of data. Note that while a CPU can do this job, GPUs do this a lot better.
The reason behind this is just the way a GPU is built. They can handle tens of thousands of operations per cycle, the dimension of data is generally 1 x N data unit, they have a mixed memory subsystem architecture and are produced by fewer, specialised manufacturers.
Also read: Top 7 Graphics Cards under INR 5000
Tensor Processing Unit or TPU
If you’re into Machine Learning or Computer Vision, you already know what they are. For those who aren’t much familiar with these terms, a Tensor processing unit processes, you guessed it, tensors.
TPUs are co-processors designed to take on machine and deep learning tasks specifically developed using TensorFlow. TensorFlow is an open-source machine learning platform developed by the Google Brain Team.
For those of you who don’t know, machine learning is extremely heavy on a GPU, more so on a CPU. While both these processors can manage to somewhat run ML tasks, a TPU takes things to the next level.
It has an explicitly managed memory subsystem architecture with data dimension of N x N data unit. This means that the TPU can handle up to 128,000 operations per cycle. That number isn’t even close to what the high-end CPUs and GPUs can manage.
TPUs are developed by Google, and they have a very specific use case. So specific that there aren’t even any compilers developed for TPUs yet. So good luck running everyday computer tasks on a TPU.
Also read: Snapdragon 712 vs 710 vs 675