'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.
IANAP, but this sounds like trying to reverse entropy as much as possible to me. Won't it take more energy to do a reverse computation than you'll save? Where does the lost energy from that go?
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
Wouldn't "regenerative", like regenerative braking on most electrics/hybrids been a better term?
I have to admit that I'm no chip designer, but I have to wonder why this hasn't been done before? What are the problems with this technic?
It sounds good, but what's the catch?
No matter how many of my rights are taken away, somehow I still don't feel safe. -Frigid Monkey
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
Should be "Reversible computing rears its butt again"
While he was at MIT, Frank worked on a team that built several simple prototypes of reversible chips.
It has at least gotten to the chip level so far...
"I'll have a Guinness, no wait, make that a Coors Light" -Grad student I work with, who shall remain anonymous...
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
Energy is equivalent to WORK. Information is a static property of a configuration of elements.
What's going on here is a circuit implementation detail. In a normal chip, when you have a bit set to 1 and a bit set to 0 and you flip them both, the bit set to 0 is charged with fresh energy from the power supply and the energy in the bit set to 1 is converted to heat. In this proposed system, the charges would be moved from the 1 to the 0 with no loss and no additional draw on the power supply. Less work, same informational content.
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.
Even a perfect internal combustion engine can't be more than about 25% efficient, because of the nature of heat engines. Cars are already getting pretty close to this limit, so any improvements to fuel efficiency will come from techniques like lighter-weight vehicles, better aerodynamics, and techniques like hybrid engines that let the engine run at top efficiency all the time.
"They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
Imagine a computer that ran on heat and got colder the more you used it.. then i could pay video games and have ice cold beer.
Oh thats not what they mean by reversible? Damn
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
Actually, you are just spewing, at least kind of. As long as the Second Law of Thermodynamics holds true, there is no "conservation of information" law in this universe.
What's really happening here is a lot more simple. In a digital computer, information is stored as a series of energy states. A bit is either 1 or 0, with a 1 meaning that a circuit is energized, while a 0 means that the circuit is not energized. The important thing is that both energized and non-energized circuits hold exactly the same amount of information.
The only thing that this article is talking about is storing the energy from the energized bits in an "energy cache" once the 1 has been switched back to 0, so it can then be used to power other bits. It's really not a very radical idea at all. The only semi-radical thought here is that it would be worthwhile to recover this energy, and that chip manufacturers would benefit from investing in this research.
Reversible computing is severly limited in terms of normal processor operations. This means that operations such as modular multiplication start to build up a lot of data since you need to 'remember' the two number multiplied in order to undo the operation.
Consider multiplying two numbers, a and b. So a * b = c. Now to undo the operation you only need c and either a or b. So with normal multiplication (or addition, etc) you have two inputs as such and you need to remember two outputs. This gets worse with modular multiplication (depending on the exact set up) since you may need to remember a, b, and c to undo the operation.
When you think of standerd computer operations, most of them are lossy. The problem with reversible computing is coming up with algorithms that are reversible and still useful. This is the case with quantum computers -- quantum operations are not allowed to lose info, so they are reversible. The most famous quantum algorithm, Shor's Algorithm, will factor very large integers quite easily on a quantum computer. It is actually a probabalistic algorithm, and quite complicated (and interesting). Although the entire opeartion is not reversible (and hense not all quantum), the key components are indeed reversible. Other than Shor's Algorithm, there are not a whole lot of algorithm's for quantum computers becuase they are reversible by nature, and, as such, are limiting to work with.
I agree with the author of the article that more research should be done on reversible chips, algorithims, etc. However, I feel that people should understand the limitations inherent in such a system.
Thinking is good, I think.
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.
autopr0n is like, down and stuff.
You can find more information about Dr. Frank's research on his homepage.
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.
So I don't know how to explain in terms of currents and transistors, but it is similar to what mikee is saying in this thread (that thermodynamic laws say that destroying information will always consume energy).
The reason quantum computation guys tend to know about this area is because all logical operations on a quantum computer (except for the measurement at the end) are reversible operations.
Frank ... or Frink?
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
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...
This means, for one thing, that a reversible computer has no concept of boolean AND. Or OR, for that matter
Actually, you can add one additional output to any binary logic gate in order to make it reverseable; most reverseable computing designs focus on that and the logic circuits themselves ignore the secondary output...
I am disrespectful to dirt! Can you see that I am serious?!
So it looks as if we could get rid of the resistance, we could have essentially "perpetual" computing, much like we have essentially "perpetual" current flow in a superconducting ring... except this time with switches directing the electron flow amongst many parallel channels.
I think you are onto the superconducting computer.
I read the main article and was kinda confused about the use of "resonators" to store energy with much less loss. I design a lot of switching power supplies, and I use those techniques a lot to boost the efficiency, as well as reduce stress, on my power supply components. By doing resonant designs, I can use stray capacitances to my advantage, storing their energy in inductors during switching intervals, then re-introduce the stored energy back into the circuit at the proper time to make some really cool power converters.. ( pun intended ).
But here's the problem.. my frequencies are determined by the laws of physics and are either sinusoidal or sinusoidal derivatives. Data is not. I would find it hard to store energy is some sort of inductor, as the energy will bounce back at me in a given time... and if I am not prepared to route the energy in a constructive way when it comes back at me, its wasted, only thing it does then is expend its energy heating up and stressing my switch. I have looked at enough core-dump to know data is not periodic.
It doesn't look like an easy thing to do to try to recover energy from the edges of many switching lines that are all switching at asynchronous times. I would have to know a lot more about this before I could really generate a cogent comment.
"Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]
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.
what I'm thinking is that the CPU does billions of calculations/second, but some other chips don't run as fast and don't need as much power, so they can take what's left over from the CPU and other chips and use some outside energy.
is that possible? like i said, I don't know much about electrical engineering, so I don't even know if it's practical to map a ground pin to a capacitor...
I can only suggest that this James Clark seek a career working for SCO's legal department. With his ability to confuse an issue and their desire to do so, it's a match like peanut butter and jelly.
you
both
close
guess
You want to cut back on the 100W of heat being released by today's processors?
100W?
I piss 100W when I get up in the morning.
100W will cost you $79 [US] a year if you run it hard and constant every second 24/7/365. ($0.09 per KWH)
In the US, each average family has more power, more cheaply than some cities in other parts of the world.
Furthermore, the energy is still going to be released as heat at some point. Where else does it go??? Sure, you might be able to switch a given transister 3-4 times with the same energy, but once it drops in voltage and current, the transister no longer switches. Furthermore the chips are already being run at 1.x volts, which is barely enough to account for the voltage drop anyway. To get enough energy back after a transister you'd have to put in a greater initial voltage, wasting more heat.
Furthermore, more transisters means more complexity, more electricity, and more speed problems. I'm sure there's some savings, but once you add everything up it simply isn't worth it for mainstream desktop processors.
It may be worthwhile in battery operated, low speed, high efficiency processors, but it'll be a long time before a wall is hit that only this technology can help with.
The reality is that this guy's patent is running out, and he's shopping it around to see if he can eke anything out of it.
-Adam