Can We Surpass Moore's Law With Reversible Computing? (ieee.org)
"It's not about an undo button," writes Slashdot reader marcle, sharing an article by a senior member of the technical staff at Sandia National Laboratories who's studying advanced technologies for computation. "Just reading this story bends my mind." From IEEE Spectrum:
[F]or several decades now, we have known that it's possible in principle to carry out any desired computation without losing information -- that is, in such a way that the computation could always be reversed to recover its earlier state. This idea of reversible computing goes to the very heart of thermodynamics and information theory, and indeed it is the only possible way within the laws of physics that we might be able to keep improving the cost and energy efficiency of general-purpose computing far into the future...
Today's computers rely on erasing information all the time -- so much so that every single active logic gate in conventional designs destructively overwrites its previous output on every clock cycle, wasting the associated energy. A conventional computer is, essentially, an expensive electric heater that happens to perform a small amount of computation as a side effect...
[I]t's really hard to engineer a system that does something computationally interesting without inadvertently incurring a significant amount of entropy increase with each operation. But technology has improved, and the need to minimize energy use is now acute... In 2004 Krishna Natarajan (a student I was advising at the University of Florida) and I showed in detailed simulations that a new and simplified family of circuits for reversible computing called two-level adiabatic logic, or 2LAL, could dissipate as little as 1 eV of energy per transistor per cycle -- about 0.001 percent of the energy normally used by logic signals in that generation of CMOS. Still, a practical reversible computer has yet to be built using this or other approaches.
The article predicts "if we decide to blaze this new trail of reversible computing, we may continue to find ways to keep improving computation far into the future. Physics knows no upper limit on the amount of reversible computation that can be performed using a fixed amount of energy."
But it also predicts that "conventional semiconductor technology could grind to a halt soon. And if it does, the industry could stagnate... Even a quantum-computing breakthrough would only help to significantly speed up a few highly specialized classes of computations, not computing in general."
[I]t's really hard to engineer a system that does something computationally interesting without inadvertently incurring a significant amount of entropy increase with each operation. But technology has improved, and the need to minimize energy use is now acute... In 2004 Krishna Natarajan (a student I was advising at the University of Florida) and I showed in detailed simulations that a new and simplified family of circuits for reversible computing called two-level adiabatic logic, or 2LAL, could dissipate as little as 1 eV of energy per transistor per cycle -- about 0.001 percent of the energy normally used by logic signals in that generation of CMOS. Still, a practical reversible computer has yet to be built using this or other approaches.
The article predicts "if we decide to blaze this new trail of reversible computing, we may continue to find ways to keep improving computation far into the future. Physics knows no upper limit on the amount of reversible computation that can be performed using a fixed amount of energy."
But it also predicts that "conventional semiconductor technology could grind to a halt soon. And if it does, the industry could stagnate... Even a quantum-computing breakthrough would only help to significantly speed up a few highly specialized classes of computations, not computing in general."
Moore's Law is about device sizes and economics, not about energy use.
Yeah, this one was a bit of a brain burner. I actually had to RTFA to get a clue as well. Hopefully we get more of these articles. Wouldn't that be nice: tech-heavy stories on a tech-site...
I'm still going to point out some silliness in the article, mainly, this quote:
There’s not much time left to develop reversible machines, because progress in conventional semiconductor technology could grind to a halt soon. And if it does, the industry could stagnate, making forward progress that much more difficult. So the time is indeed ripe now to pursue this technology, as it will probably take at least a decade for reversible computers to become practical.
That seems like a stretch. As soon as we actually hit the wall, there's going to be a great incentive to push forward with alternative technology. In the meantime, the world is not going to collapse because we can't keep increasing our computational power at the same ridiculous rate. In fact, it might actually be nice to take a bit of a breather and just work at hardening and optimizing our existing infrastructure (hah!).
Rather, it sounds like a marketing pitch for more funding, and seem more than a little self-serving. Still, that's fine. I hope there remains some amount of funding for blue-sky projects like this and quantum computing. Even if it doesn't pan out as hoped, it's very likely we still learn valuable things.
Irony: Agile development has too much intertia to be abandoned now.
It is interesting, as a pure mathematician, to read:
"[F]or several decades now, we have known that it's possible in principle to carry out any desired computation without losing information -- that is, in such a way that the computation could always be reversed to recover its earlier state."
Now this 'can get back to earlier state' thing is basically the 'existence of inverses' axiom of group theory. A semigroup is a structure with a well-defined associative operator, but not necessarily an identity, nor existence of inverses. Now going from one computation state to the next, as a CPU does, is essentially a semigroup operation. Or at least something like that.
Reversible computing is effectively the faithful transformation of an abstract structure (e.g. rotating an icosahedron) on which the possible transformations form a group. Such a condition means that an unbounded number of operations can be chained without loss. This means the transformation must take zero energy. Thus, in fact, no change takes place. That means that what you think is a computation is, in fact, a fixed point that you're somehow conjuring into what appears to be a non-fixed computation. Interestingly, to me this stuff isn't new, nor even recent. What the ancient mystics, yogis and others obsessed over was this sort of aspect of reality.
Getting back to a less abstract point of view, the problem I see is that if these guys (and girls) insist on reinventing group theory the hard way, they won't even be able to catch up with where group theory was middle of last century. Indeed there is a dire need to more thoroughly think through what computation itself _actually is_. The 'Turing Machine+ChurchTuringThesis' thing is a half-decent first stab, but nothing more. The infinite tape, like the successor and infinity axioms of Peano Arithmetic and ZF Set Theory also, is akin to a naive C programmer assuming that malloc() will never fail. When you're knocking up a quick prototype, and you're not bothered if a malloc() failure crashes the program, fine. On the other hand, Linux kernel module authors seem to understand the need to use malloc() when it works, but never to trust it for critical duties, whether explicitly, or implicitly (via e.g. printf).