'Reversible' Computers More Energy Efficient
James Clark writes "As Congress continues work on a federal energy bill, a group of University of Florida researchers is working to implement a radical idea for making computers more energy efficient -- as well as smaller and faster." Reversible computing rears its head again.
Has anyone ever built even a very simple reversible computer? Or is this like quantum computers: all theory, no practice?
"They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
Wouldn't "regenerative", like regenerative braking on most electrics/hybrids been a better term?
Insensitive clod!
your computer could spit out: "these CPU cycles made of 75% post-CPU-consumed waste" :)
smd4985
Boy, that's something to worry about today. I'll just have to find a spot to insert it on my Worry List. Maybe I can drop Global Warming to make space.
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
Sigh.
"I'd rather be a lightning rod than a seismometer." -Ken Kesey
People started looking at reversibility in earnest when quantum computing came on the scene. A quantum computer HAS to be reversible in order to function. That made it a very important field of study.
We only recently realized that reversible circuits are also more energy efficient. So basically, we didn't do it before because we didn't know. There is no "catch."
You get the most energy efficiency from a machine when it works in a thermodynamically reversible way, for instance the most efficient thermal motor possible is one that uses a Carnot cycle. Most real-world engines use different, less efficient cycles like the Otto or Stirling cycle because they yield higher speeds or torque.
Losing the ability to reverse computations means increasing entropy and thus lower efficiency. Interestingly, there is a whole class of functional programming methods that is intrinsically reversible (because evaluating expressions without side effects is reversible).
The best explanations of the issues involved is in Richard Feynman's "Lectures on Computation", that show how thermodynamics constrain what is ultimately possible with a computer.
http://www.amazon.com/exec/obidos/tg/detail/-/0738 202967/103-2222180-5559862?v=glance
He has a great deal of info about how reversable computers work and why they save energy.
--Rob
I mean, say you have a CMOS OR gate. If both of the inputs are high, then the NMOS transistors will close and the PMOS transistors will open. Energy is lost only when electrons 'leak through' when the gate changes (and of course, electrons that leak through but don't affect the computation, which I guess happens all the time). How would reversing the computation affect this? Maybe if you were using plain PMOS or something...
autopr0n is like, down and stuff.
And if it is realistic, then how much more powerful are oil companies politically than electric power companies that the latter are going to just stand by and let this happen?
You mean, the power companies are going to force Intel to make their chips more wasteful, causing progress to halt and people to buy fewer Intel chips? Yeah, sure.
I mean, there's paranoia, and there's paranoia.
Come on, wake up. I won't claim that kind of thing never happens but by and large capatalism is too powerful; Intel isn't going to act against its own best interests for any mere money the power companies can throw at it, because it won't be worth it. Growth is worth more then mere money to Intel. (If you don't understand why, go learn about business; the explanation is too complicated for a Slashdot posting.)
The power company is made of people like you and me; far too busy to hover over various scientific journals and swoop around like super-villians repressing "dangerous" information.
Universiteit Gent has some pictures of reversible logic gates, including a four-bit adder composed out of Feynman's "NOT, the CONTROLLED NOT, and the CONTROLLED CONTROLLED NOT" reversible logic gates, and some other circuits they've built.
They also have links to other sites about reversible logic and reversible computing, such as Ralph Merkle's Reversible Computing page (from Xerox).
Also note the bottom of the page: there's a vacancy in the research group, for all those just aching for a chance to work on reversible computing! (Looks like you'll have to speak Dutch, though.) ;-)
Dlugar
Computer Go: Writing Software to Play the Ancient Game of Go
Isn't it just easier to use the excess heat to power a Stirling engine to recapture waste energy?
Maybe the Stirling idea is going too far.
How about a more efficient circuit? It's been awhile since college, but isn't excess heat a sign that the circuit is inefficient?
While it's not completely frivolous research, it's not the first avenue I would approach when looking at this problem. It seems more difficult and time-consuming to add in circuitry to re-use the energy to perform other actions inside of a CPU. It seems like you'd have a better chance at compounding the problem, rather than helping it.
However, make the circuit more efficient, you'll generate less heat. That would be my first goal. What kind of efficiency do they get with today's CPUs?
With this reversible thinking, I have an idea. I need a little help from the anti-SUV crowd... wouldn't all gasoline engines be better off with really big flywheels?
-- No sig for you!
Asynchronous Logic (i.e. no clock) has many of the same benefits, as well as potentially increasing the speed of processors significantly.
A rather large portion of the heat genreated by a processor is just from the clock signal propagating to every bloody logic gate in the mess including the parts not in use. With asynchronous logic, if a part isn't in use, it gets no current. Of course, clock signals have been used for the last half century for a reason. Clock signals are used to time signals so that you don't have 3 digits of a number showing up before the rest, etc. With asynchronous logic you have to worry about path lengths down to the picometer so you don't need the clock to act like a traffic warden. The biggest holdup to asynchronous logic has been the immense design difficulty involved, but that is changing as new design tools are developed.
Anyways, the big reason why Asynchronous logic is going to arrive on the processor scene long before reversable logic is that it already has. Intel and other manufacturers are already incorporating asynchronous logic into their designs, and plan to increase the ammount used as time goes by. The different manufacturing techniques required are slowly being phased in. Reversible computing, on the other hand, has virtually no chance of showing up within the decade.
My point is that the article linked made no allowance for the increasing use of asynchronous logic. It's going to have a significant impact on heat dissipation in the neBuew years.
This book by Richard Feynman is based on a series of lectures given at CalTech in the mid 1980s.
In it he discusses Reversible Computation and the Thermodynamics of Computing and quantum computing.
As usual, Feynman was way ahead of his time.
I highly recomend this book.
The basic idea is heat is only generated when information is destroyed. So don't destroy information when performing computations.
How this relates to something actualy practical is hard to say, but it didn't strike me as something that would apply to silicon very easily.
John
I am always doing that which I can not do, in order that I may learn how to do it. - Pablo Picasso
Thermodynamics also says that you lose non-heat energy in reversable systems as well. If you throw a ball into the air, you lose some energy from wind resistance, from converting chemical energy in your arm into mechanical energy, etc.
Sure, but mechanical losses can always be recovered and put back into a system. Heat losses can't, which is the point of the second law of thermodynamics.
Tubal-Cain smokes the white owl.
The problem with reversability is that for any given semiconductor process, it effectively doubles the number of gates that need to be built on the chip, and manufacturers are currently more interested in cramming more features into the chip; not to make them more efficient.
It might be theoretically possible to build smaller and faster chips by reducing the energy/thermal issues, but I suspect most companies are not willing to take that leap of faith.
I bet the first places we'll see reversible gates being used in a full-fledged MCU/CPU would be for a mobile/handheld processor running reversified version of an older (less gates) core using latest processes...
While they may be helpful for certain things, especially quantum computers (but that is a whole different story) there is a snag. They are deterministic; great CS people like Rabin have taught us the value of probabilistic turing machines and today we use them as the basis of determining what is computationally efficient (BPP, see Michael Sipser's intro to computation and complexity). Every once in a while you have to take a non-reversable step to pick a random number (as well as through away garbage you don't want to store any more) and this negates the thermodynamic advantages of reversible computing.
No Free Lunch
(k = Boltzmann's constant, W = number of states)
Information (in bits) I = log_2 W = ln W / ln 2
Hence S = kI/ln 2 or roughly S = kI.
Heat Q = ST = kTI.
Let's say we destroy 100 gigabits of information at a temperature of 300 K. Since k = 1.38E-23 J/K, this means a heat of about 4E-10 Joules. Which is not very much, and does not really contribute to the heat produced by CPUs.
In fact, I think this is the way to find a theoretical minimum for the heat produced from information processing. We can try and make more efficient processors to get closer, just like we can increase the efficiency of engines to get closer to the thermodynamic limit.
Escher was the first MC and Giger invented the HR department.