Friday, 28 February 2020

Flipping (pesky?) bits

On 8 May 2019 Radiolab broached the subject of bit-flips (when a 1 or a 0  becomes a 0 or a 1), while listeners in the UK had the luxury of ignoring the still distant Brexit shenanigans of 31 Octob... sorry, January 2020 (in the vain hope that something would deliver us from the nightmare). So this Radiolab offering didn't air (sorry) on the BBC until February 2020.
<RANT>
And the latest is that unless the EU rolls over by June Boris is going to stamp his little foot and spend 6 months in intensive no deal planning, handing over the reins to the disaster capitalists of the far right.This really is the negotiating tactic of the schoolyard – if not the playgroup.
</RANT>
But about those bit-flips. In the words of the Radiolab blurb
Back in 2003 Belgium was holding a national election. One of their first where the votes would be cast and counted on computers. Thousands of hours of preparation went into making it unhackable. And when the day of the vote came, everything seemed to have gone well. That was, until a cosmic chain of events caused a single bit to flip and called the outcome into question.

Today on Radiolab, we travel from a voting booth in Brussels to the driver's seat of a runaway car in the Carolinas, exploring the massive effects tiny bits of stardust can have on us unwitting humans. 
The programme is worth a listen if you've the time, but I'll cut to the chase. In that Belgian election one of the voting machines gave an impossible result; more votes were cast in favour of one candidate than voters who'd used that machine.

There was a manual recount, and before you could say But I thought the Cold War was  over (it was the Communist candidate who'd had the Putinesque...
<ASIDE silliness ="11">
So that's what the name of that pasta dish means...
 </ASIDE>
...success) the IT people noticed that the difference between the manual result and the digital one was exactly 213 (or, as they said on the programme, 4096).

Not being a natural thinker in binary, but having some experience of the world of bits and bytes, when I heard "4096" I thought  Hang on, that's 4K' ...
<ROUGH_EQUIVALENTS>
A "binary thousand" is, in its approximation to 1000, a bit like a "metric mile" (or 1500 metres); that is, not. But close enough. Since 200 metres is just over a furlong, 1600 metres would be a lot closer.
<CALCULATION>
A metre is 4 inches more than a metreyard, so 9 metres is a yard longer than 9 yards (i.e. 10 yards). So 100 metres is 111 yards and change. People of a certain vintage will know a furlong is 220 yards, and there are 8 furlongs in a mile. So 1600 metres is just over a mile.
</CALCULATION>
But sports commentators still call the 1500 metre race "the metric mile".
</ROUGH_EQUIVALENTS>
What caused the bit to flip was a cosmic ray; and it happens all the time, often in a benign way (causing a glitch that can safely be ignored). Computer engineers know this, and know that there is no hardware "shield" that can save chips from this threat...
<CLOUD_CHAMBER>
Cosmic rays don't care about physical objects standing in the way.  The particles themselves are much too small to be seen directly, but there are several YouTube clips with instructions for making a cloud chamber – which lets you see the trails they leave (on the Radiolab  programme they liken them to the con trails that a jet aircraft leaves behind.)
</CLOUD_CHAMBER>
...Bit-flips happens more at higher altitudes (where the cosmic rays have higher energy); and it takes much less energy to flip bits in modern (miniaturized) chips.

So we're screwed, though not entirely. Where precision is a matter of life or death (say, in an aircraft's electrics) there is a way round the problem: redundancy. A life-or-death component is typically duplicated twice; and output commands (such as raise the nose or cut the engines) are voted on. Only a majority vote triggers action.

But redundancy isn't popular among designers of consumer electronics; who wants a smartphone big enough to house a lot of redundant processors?  Some bit-flips – a majority of them? – are benign, and usually go unnoticed. And, as for the rest, we'll just have to get used to the occasional computer blip (in fact, we already are accustomed to computers that misbehave; we just have to learn not to be so surprised when they do). Or (here's an idea) DO WITHOUT THE  WRETCHED THINGS.

Time I did a bit of prep for this:


Bye for now.

b

Update: 2020.04.30.12:10 – A couple of typo fixes. (Does nobody proof-read these things?)


.




No comments:

Post a Comment