Publication | Legaltech News
Nervous System: Alan Turing’s Gin Memory
David Kalat writes about the early days of general-purpose computers and a suggestion by Alan Turing to improve computer memory, at a time when computers relied on vast roomfuls of liquid to store what today seem like pitifully small amounts of electronic data.
Large amounts of cocktails do not typically go hand in hand with improved memory function. But in the early days of computer science, no less a luminary than Alan Turing himself proposed that a roomful of cocktails might improve a computer’s memory. The suggestion was mildly tongue in cheek but offers a window into one of the most vexing engineering challenges behind the creation of the first computers.
The earliest digital computers used vacuum tubes for memory. For example, the Electronic Numerical Integrator and Computer (ENIAC), the first general-purpose electronic computer, was originally designed to help calculate artillery firing tables for the Army during World War II. It found more value as a way to run computations for the development of the hydrogen bomb. It was both a taxpayer-funded military intelligence project of maximum national importance and a groundbreaking advance into the new information age.
To complete the project quickly in the early 1940s to meet its military objectives, the engineers behind the ENIAC made certain compromises. One compromise was the decision to use vacuum tubes. Like beads on an abacus, each tube represented either a value between 0 and 9, or a multiple of ten. Vacuum tubes were finicky and fragile, and occupied a lot of space. With an array of 17,468 vacuum tubes, which occupied a space large enough to park a school bus, the ENIAC had an upper capacity of storing twenty ten-digit numbers.
The ENIAC was a digital computer, but not a binary one—the next generation of computers that followed opted for binary data storage, which was significantly more efficient, and needed far fewer components to represent binary numerical values.
The next leap forward was engineering something smaller and more versatile than a vacuum tube. To this end, J. Presper Eckert had a Eureka! moment of serendipitous lateral thinking. As one of the engineers responsible for developing radar systems for the US military, he had been challenged by how to distinguish radar blips of things that mattered from the background noise of radar blips off of the routine, unchanging landscape.
Radio works by sending out beams of electrical pulse that bounce off of objects and are reflected back, so the radio receiver can pick up the reflected echoes of objects that were in the way of the original beam. Eckert’s idea was to feed the returning signals from the first set of radar pulses into a crystal microphone that converted them into sound waves, then feed those sound waves into a tube filled with mercury. The liquid mercury slowed the waves down, and when they emerged at the other end of the tube, a second crystal microphone converted the delayed sound waves back into an electrical signal.
While this was happening, a second set of radio pulses was beamed out but not routed through the mercury tube. The mercury tube was calibrated to slow down the first set of signals to synchronize them with the second set. The sets of signals returned as simultaneous echoes. The radar equipment compared the two signals and filtered out everything that was identical, leaving behind only the echoes of anything that changed position between the first and second pulses—the echoes of moving objects, like enemy planes.
Eckert realized that he could take the output of the mercury delay line, route that electrical signal back to the front of the same tube, and feed it back in again, in a permanent loop. The signal would be converted into sound, slowed down by the mercury, turned back into electricity, and then looped back through the exact same round trip. As long as the signal kept looping through the same cycle, it was essentially stored in that mercury line. Better yet, the mercury tube could be used to store a series of binary pulses passing through it in sequence. Eckert’s mercury line memory concept was vastly more efficient than vacuum tubes—a single tube of mercury could store as much data as 550 vacuum tubes.
But the system required vats of mercury, which is a rare but toxic element. Making mercury a central component of computer architecture was inevitably a complicated and fraught decision. Nonetheless, in 1949 Eckert and his colleague John Mauchly built the Electronic Discrete Variable Automatic Computer (EDVAC) around a mercury delay-line memory capable of holding 5.5 kilobytes.
Alan Turing, working on the same problem in the United Kingdom, offered a cheeky twist. Turing noted to Sir Maurice Wilkes, the project chief in charge of the UK’s Electronic Delay Storage Automatic Calculator (EDSAC, also 1949), that room-temperature gin had effectively the same essential physical properties as mercury. Turing explained that instead of requisitioning large quantities of an expensive and poisonous substance, the EDSAC team could simply pop over to the corner liquor store and stock up on dry and refreshing electronic data storage.
Sir Wilkes’ team instead fitted their computer with thirty-two five-foot-long tanks of mercury, capable of holding 2.24 kilobytes. Wilkes did, however, find it useful to prewash the tanks in alcohol before filling them with mercury, to help create the necessary acoustic contact between the mercury and the crystals used to convert electricity to sound and vice versa.
As odd as it may seem today, until the invention of random-access “magnetic core” memory in 1951 and subsequent developments in using spinning hard-disk drives for long-term storage, computers relied on vast roomfuls of liquid to store what today seem like pitifully small amounts of electronic data.
The views and opinions expressed in this article are those of the author and do not necessarily reflect the opinions, position, or policy of Berkeley Research Group, LLC or its other employees and affiliates.
Read the article. (subscription required)