October 16, 2020
Designing approximate computation to save energy
If you think about computation, the words correctness, speed and precision probably come to mind. But the researchers of the OPRECOMP project beg to differ. They aim for developing a radically different, more flexible type of calculation called transprecision computing.
Demolishing the 100% precision assumption, which underlies nearly all modern digital computing, is the overarching goal of the OPRECOMP research consortium led by IBM Research Europe in Zurich. In many applications, such precision is simply not necessary and uses too much energy. Instead, OPRECOMP will deliver approximations at just the right amount of energy needed for the job. The new technology will also make computing faster.
Usually, digital computers use an elaborate coding scheme that stores numbers in the form 64 binary digits. In many cases, however, applications do not require all these digits. A challenge within the project is not just to reduce energy consumption, but also to make sure that the approximate result remains within predefined boundaries—or at least that such boundaries can be given for the results.
OPRECOMP addresses the complete computing stack from the physical hardware via architecture to compilers, algorithms and software. It aspires to deliver the first full transprecision framework for future computing. To achieve this, an interdisciplinary team of mathematicians, computer scientists, and software and hardware engineers works not just on the computing side, but also on showcasing the benefits in cool applications such as a small drone that uses approximate computing to fly for longer periods of time.
Other targeted fields of application include big data analytics, machine learning and high-performance computing (HPC). The architecture developed will address processing, memory and communication aspects from the low-power (mW) systems used in small devices or connected objects to large, energy-intensive (kW) high-performance computing systems.
The project team has already adapted many existing algorithms to work in transprecision: for example the team has developed a novel implementation of the BLSTM algorithm, which turns images into text using just 8-bits precision. It only loses 0.01% in accuracy but reduces power consumption up to a factor of 4 or even 8. The algorithm has also been implemented in hardware, proving that it can be automated and used in applications.
"One challenge is that transprecision computing is not widely known—even among computer scientists", says coordinator Cristiano Malossi. "Automation is key to helping an open international community to grow, so that transprecision computing can be accessible to a broad audience, including engineers who do not have expertise in approximation and inexact computations. In this respect, OPRECOMP is developing a transprecision software development kit that enables 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 made a big step forward."
By the time OPRECOMP ends, in December 2020, the project will have generated new algorithms based on transprecision computing, new low-energy platforms for executing such workload, software environment libraries to enable use of transprecision computing, as well as emulation libraries that accelerate prototyping and development. All software produced has been made Open Source, and results such as the FloatX programming library for low-precision computing have already made the news. Furthermore, IBM has created a prototype of a traditional HPC system coupled with transprecision computing acceleration.