Hacker News new | ask | show | jobs
by dnautics 2737 days ago
can you expound on energy efficiency? How much energy does it take to chemically synthesize the dNTPs required to do the equivalent of moving a bit and how does that compare to, say moving an electrons in a bit from SSD to cpu and back?
1 comments

Good question. The second law of thermodynamics dictates a theoretical maximum of 3.4 x 10^20 (irreversible) operations per joule (at 300 K or room temperature). I think there is an exemplary work which answers your question. In 1994, Len Adleman (the A in RSA) wrote a Science paper[0] where he used DNA to solve a directed Hamiltonian path problem. In that work, he calculated that in principle 1 joule is sufficient for ~2 x 10^19 operations using DNA. This number is remarkable in that it is extremely close to the theoretical maximum. Existing supercomputers (at the time the paper was written) execute at most 10^9 operations per joule. He goes on to say that "the energy consumed during other parts of the molecular computation, such as oligonucleotide synthesis and PCR, should also be small in comparison to that consumed by current supercomputers".

[0] L. Adleman, "Molecular Computation of Solutions to Combinatorial Problems", Science 266, 1022 (1994)

Nowhere did I see you address the dNTPs.

Nucleic acid computation vs electronic computation is rather like SpaceX vs traditional rocketry, in that in traditional rocketry you have to build your entire infrastructure and medium from raw materials each time you want to do a new launch.

Adelman is right that process of oligo synthesis is energy cheap and amortizable, but he's not a chemist: the dNTPs themselves are not. A nucleotide triphosphate is not an easy molecule to make by virtue if their instability, and their usefulness derives from their instability.

I think you're confusing the energy efficiency of computation and the energy needed to create the elements which perform the computation. The initial comment refers to the former whereas you're asking about the latter. Your question, "How much energy does it take to chemically synthesize the dNTPs required to do the equivalent of moving a bit..." is not an appropriate analogy because synthesizing dNTPs (energy needed to create computing elements) is not analogous to "moving a bit" (energy needed to perform a computation). It's like comparing how much energy is needed to manufacture a hard disk and how much energy is needed to read/write to and from the hard disk. It's a meaningless comparison.
that's exactly correct. YOu only need to make a hard drive once and it's good for tons of computation. Not so with DNA.
You only have to make DNA once. If you actually wanted to make a sensible comparison, then the question you should be asking is, "How much energy does it take to manufacture a silicon based computing element (such as transistors or CPUs) as opposed to an analogous DNA computing element?" But again, this has no relevance to the computational energy efficiency of the element.
you only have to make DNA once per task, that's correct. You don't need to build a new hard drive or a GPU each time you want to do, say, a gigaflop's worth of an ML experiment. It is reusable across tasks.

Also really fun would be writing your unit tests to make sure the DNA algorithm you've programmed was acutally correct.