Reversible Computing:
A Brief Introduction

Michael P. Frank
mpf@cise.ufl.edu

My major (past & present) research area concerns the use of low-power techniques in computing. Not only is low power important in portable/embedded devices, where energy supplies may be limited, but also, it is becoming increasingly important for all compact, high-performance systems, as heat dissipation increasingly becomes a limiting factor on performance. For example, you can run today's Pentiums much faster if you cool them aggressively - a fact which is already the basis of some existing businesses.

However, given necessary limitations on cooling technologies, it turns out that with normal computing techniques, raw computer performance is ultimately limited in proportion to a system's outer surface area. This severely limits our ability to pack circuits densely into small-diameter spaces. Unfortunately, compact system designs are vital, not only for increased portability, but also in order to reduce communication delays in aggressive parallel algorithms.

To enable better performance scaling for parallel machines, and higher performance per Watt in energy-limited systems, my colleagues and I have been investigating the theory, design, and application of novel, thermodynamically reversible computing techniques. Recently-developed "adiabatic" digital electronics enables most of a system's active electrical energy to be reused from one clock cycle to the next, rather than being dissipated on every cycle to heat.

The technique allows us to buy increased energy efficiency, at the cost of lower transistor-count efficiency. Overall, it permits (1) a portable device to perform much more total computation before its battery runs out, (2) a compact heat-limited system to compute much faster given the same size limit and cooling system, or (3) a large supercomputer to run aggressive parallel algorithms faster, period.

The scaling advantages of the reversible approach have been shown to follow from fundamental principles of physics, and therefore, these advantages will remain, regardless of any future developments in computing technology! (Superconductors, quantum computing, molecular computing, etc.) So this is definitely an important research direction to explore for the long run.

Interestingly, in this long term view, taking optimal advantage of thermodynamically reversible techniques requires not just different electronics, but also changes to all higher levels in computing - different logic designs and CPU architectures; different programming languages and algorithms. The reason is that in the reversible approach, as in the laws of physics themselves, information is a conserved quantity - it cannot be destroyed, although it can be uncomputed by careful, deliberate design. If information is simply discarded, as occurs continually (and implicitly) at all levels in traditional computing, it inevitably becomes heat.

Therefore, in the long run, a whole new paradigm within computer science will eventually need to develop (supplementing, not supplanting the old one), in order for us to take full advantage of reversible techniques. Fortunately, we do not have to wait for this "paradigm shift" to happen; we can start taking advantage of these techniques in a more limited fashion, for real applications today.