
Who needs a CPU? Phase change memory acts as an analog computer (2017) - jasondavies
https://arstechnica.com/science/2017/10/who-needs-a-cpu-phase-change-memory-acts-as-an-analog-computer/
======
igorkraw
I am doing an internship in the lab where the cited paper was produced right
now :-D

If anyone has questions, I'll do my best to answer or relay(maybe tomorrow
though as it is late here). There also was a related discussion about 2 months
ago:

[https://news.ycombinator.com/item?id=16894818](https://news.ycombinator.com/item?id=16894818)

~~~
mehrdadn
Is analog computing reproducible? Digital computing is kind of founded on the
idea that running the same program twice will give the same results (i.e.
determinism), but it seems to me that analog computing might simply fail to
make that guarantee. Is that correct? And if so, have the implications and
workarounds been investigated at all?

~~~
jacobush
I expect within bounds... this already exists in floating point operations.
Look up distributed games programming, x86, PPC etc for some meaty details,
but the gist of it is to never trust the exact value, rather look for values
within a suitable range.

Interesting take though - with analog computing, this problem would be
everywhere rather than in certain special cases. There probably is some funky
math we can use to describe and talk about on HN in the year 2029?

~~~
mehrdadn
That it would be everywhere was exactly my point; I started listing all the
sources of unpredictability in my comment but then I figured that wasn't
necessary so I didn't go on that tangent. But yes, threading, floating point,
RNGs, cache timing, etc. are all sources of randomness we deal with, but a
computer where pretty much /any/ computation has to deal with randomness is a
whole new ball game so far as I can tell.

------
xelxebar
This reminds of me Chris Domas' compiler that always outputs the same text
segment:

[https://github.com/xoreaxeaxeax/reductio](https://github.com/xoreaxeaxeax/reductio)

------
tabtab
Hacking possibilities increase if even simple devices turn out to be Turing
Complete. "Help, my flashlight emptied my bank account!"

~~~
tomxor
> if even simple devices turn out to be Turing Complete

It's not hard to find "simple" devices that are turing complete, 2d cellular
automata (with the correct rule) are turring complete for example and they are
incredibly simple.

This is related to a notion Wolfram has been exploring and trying to explain
for some time, which is that contrary to our previous beliefs (or most
people's current beliefs especially the engineers perspective), complex
devices are not needed to produce complex behaviour, in nature it is very
common for simple systems to produce complex behaviour, including the ability
of simple systems to compute... to the point that often these systems look
like random noise might have been introduced, but in fact they are completely
deterministic (think systems exploited by PRNGs).

~~~
perl4ever
"in nature it is very common for simple systems to produce complex behaviour,
including the ability of simple systems to compute"

I'm reminded of another recent HN thread about the "intelligence" of single
living cells. Whether or not you think they are actually "intelligent", they
are clearly capable of complex behavior without being governed by rigid
parameters and yet are obviously molecular machines that seem tantalizingly
close to being analyzable by humans.

