In particular the Efficiency, which is to improve performance by reducing consumption, has become particularly important in recent times, and researchers have been trying for decades to find alternative ways to find the best values of the two. One of these lines of research consists of departing from the rule in terms of calculation precision, something that might be absurd for modern computing but which, as we’ll tell you next, makes a lot of sense.
The precision of calculations in a processor
The main objective of the OPRECOMP research consortium, led by IBM Research Europe in Zurich. When we talk about a computer and more specifically a processor, we all think that the precision should be absolute, but in many applications such precision is simply not necessary and consumes too much power. Instead, OPRECOMP seeks to provide approximations with just the right amount of energy needed for the job, while speeding up the recalculation. These are what we might call “lazy processors” who make the “law of least effort”.
Typically, digital computers use an elaborate coding scheme that stores numbers as 64 binary digits
In other words: currently if a processor miscalculates an operation we get an error blue screen and the system hangs, so if the processor was doing rough calculations it definitely wouldn’t work, right? However, what this project refers to is do a correct calculation but without so many decimal placesbecause they are unnecessary in a large number of cases.
To give you an idea, we will give an example. Imagine that the processor has to calculate the number Pi, which, as you know, has an infinity of decimal places. So when the CPU is asked to calculate it, it will get 64 decimal places, but the reality is that the application that requested it only requires 16 decimal places (this is an example) to perform the necessary operations, so the rest. were literally calculated unnecessarily. For this reason, when we talk about the number Pi, we usually don’t say 3.14159265358979323846 … but we usually just say it’s 3.1416, rounded off because with four decimal places we usually have enough for this. which we need.
How would an approximate compute processor work?
OPRECOM is aimed at the complete IT stack, from the physical hardware level to the architecture up to the compilers, algorithms and software. It aspires to offer the first comprehensive transprecision framework for computing the future, and to achieve this they not only work on the computer side, but their team of mathematicians, computer scientists and software engineers are also working to show the benefits. applications. with rough calculations, like a small drone used to fly for long periods.
Other specific application areas include big data analytics, machine learning, and high performance computing (HPC). The architecture developed will address the aspects of processing, memory and communication from low power systems (of the order of milliwatts) used in small devices or connected objects to large high performance computer systems which have enormous consumption. (of the order of kilowatts). .
The project team has already adapted many existing algorithms to work in transprecision: for example, the team has developed a new implementation of the BLSTM algorithm that converts images to text with only 8-bit precision. It only loses 0.01% accuracy, but in return reduces power consumption by up to a factor of 8. The algorithm has also been implemented in hardware, showing that it can be automated and used. in real applications.
“One of the challenges is that the transprecision calculation is not well known, even among computer scientists. Automation is the key to helping an open international community to grow, so that the computation of approximate calculations can be accessible to a wide audience, including engineers who have no experience with approximation or inaccurate calculations. . In this regard, OPRECOMP is developing a transprecision software development kit that allows developers to easily program and experiment with transprecision algorithms and small computing devices, such as the PULP. The roadmap to see this technology in everyday applications is still long, but with OPRECOMP we have taken a big step forward ”.- Cristiano Maolssi, project coordinator.
At the end of this project, new algorithms based on approximate computation will have been generated, new low-energy platforms to perform this workload, libraries of software environments to allow the use of this type of computation, as well as library emulation tools that speed up development prototyping. All software produced was made from Open source, and the results as a programming library FloatX for low precision computing have already made the headlines. In addition, IBM has already prototyped a traditional HPC system with transprecision computer acceleration.
In the end, the goal is to reduce the consumption of processors of all kinds by making them not have to calculate so precisely, and that with more than sufficient approximate calculations, it is possible to improve performance enormously.