What is an IPU: How is it Used in Computing

In modern computing, no matter who it may be, acronyms are used for almost everything … CPU, GPU, APU … and one of these acronyms that is beginning to be used more and more is IPU , which is the abbreviation for Intelligence Processing Unit or intelligence processing unit. In this article we are going to tell you what an IPU is and what it is for, in addition to telling you in which scenarios it is used.

Although many names are “given” by the function performed by the product in question, in the end it is whoever makes a new type of device who chooses the name that is given, but once said name is established and when it begins to be used as generalized form is when it becomes important. In the case of the IPU, we are facing a product that is precisely one of those that already come with a name due to the function they perform, and although you will surely already know where the shots go once you know what the acronyms mean, we are going to enter matter.

What is an IPU: How is it Used in Computing

What is an IPU and how does it work?

As we have mentioned before, IPU is the acronym for Intelligence Processing Unit or intelligence processing unit, which as its name suggests is designed for artificial intelligence and, more specifically, it is a processor itself designed for this purpose. Just as a GPU is like a CPU but designed for graphics, an IPU is a CPU designed for artificial intelligence.

Servidor IPU

Thus, an IPU is a processor designed for parallel processing (that is, it is designed so that several work simultaneously) with the aim of accelerating Artificial Intelligence systems. Since the first generation of IPUs (Colossus), numerous advances in computing have been developed, and in the second generation it has been possible to increase the performance by 800%.

Its creators presume that, in fact, an IPU is the most complex processor developed to date, much more than the PC or server processors that we know.

Diagrama IPU

As you can see in the diagram above, which corresponds to the Colossus MK2 GC200 IPU, each “processor” incorporates a total of 1472 independent IPUs, each with a core and its own dedicated memory, so in this case we are talking about a processor with 1472 cores that in total are capable of generating 8832 parallel processing threads, or what is the same, each core has six processing threads or, in other words, each core is capable of executing six instructions simultaneously.

900 MB of memory is incorporated for each IPU with a bandwidth of no less than 47.5 TB / s, and it also uses the PCI-Express 4.0 x16 interface to handle this overwhelming bandwidth.

What are IPUs for?

All this enormous process capacity is obviously designed as we have said for Artificial Intelligence systems, that is, they are integrated into specific systems and for a specific purpose. So much so that these IPUs are actually integrated as coprocessors, since they are not able to function autonomously (just as a GPU cannot act as a CPU because it does not have the necessary instruction sets).

And it is that these processors have an expansion card or accelerator card format, and as we mentioned before they are connected to a port on the motherboard through a PCI-Express 4.0 x16 socket.

Thus, its use is precisely to accelerate Artificial Intelligence systems with dedicated cores for it, and for the moment they are useless for anything else. However, as you well know, the whole topic of Deep Learning, Machine Learning and Artificial Intelligence is not only the order of the day, but it is increasingly on the rise, so that every time we are going to find the term IPU more frequently.