ARM daddy simulates human brain with million-chip super
RISC chip choice is a no-brainer
While everyone in the IT racket is trying to figure out how many Intel Xeon and Atom chips can be replaced by ARM processors, Steve Furber, the main designer of the 32-bit ARM RISC processor at Acorn in the 1980s and now the ICL professor of engineering at the University of Manchester, is asking a different question, and that is: how many neurons can an ARM chip simulate?
The answer, according to Furber's SpiNNaker project, which is being done in conjunction with Andrew Brown of the University of Southampton, is that an ARM core can simulate the activities of around 1,000 spiking neurons. And the SpiNNaker project is going to attempt to build a supercomputer cluster with 1 million processors to simulate the activities of around 1 billion neurons. Depending on who you ask – and who you are talking about, how old they are, and how much drinking and brown acid they have done – the human brain has somewhere on the order of 80 to 90 billion neurons. So even with the impressive million-core SpiNNaker machine, Furber and Brown are only going to be able to simulate about 1 per cent of the complexity inherent in the human brain.
ARM daddy and UofM researcher
Scale model human brain
As Furber and Brown explain in their paper (PDF) describing the SpiNNaker project, they hope that by creating a silicon analog, they can simulate a more sophisticated neural network (including the spiking behavior that gets neurons to cause other neurons to fire and thus performing the data storage and data processing inside our heads) and get a better sense of how the brain really works. Something funky is taking place between the low-level function of a neuron, which is pretty well understood according to Furber and Brown, and the larger scale of the brain itself, which we can watch with magnetic resonance imaging. And it is not just thinking about sex, either. But the suspicion is that cognition has to do with the cumulative spiking effect between large numbers of neurons.
"Of greatest interest in this work is, of course, the fundamental question of how concurrency is exploited in the biology that we are trying to model," the two researchers write. "The brain is itself a massively-parallel system comprising low performance asynchronous components. Those components, neurons, operate at timescales of a millisecond or greater, and the primary means of information exchange is through the emission of electrical 'spike' events. These spikes seem to carry no information in their amplitude or impulse, they are pure asynchronous events that carry information only in the time at which they occur."
So where is information in the brain encoded? The oldest theory, say Furber and Brown, is that the spiking rate of a neuron is where data is encoded, but this theory, they say, doesn't hold water. There is some speculation that data is encoded in the order in which populations of neurons fire, and this, among other things, is what the researchers hope to put to the test as they simulate a 1/100th scale human brain on a million ARM cores.
ARM choice is a no-brainer
Figuring out how the brain works is tough, and the processor and communication network design for the SpiNNaker system is easy by comparison.
It was a no-brainer that Furber, who designed the 32-bit ARM processor while at Acorn, would opt for an embedded variant of that chip for the SpiNNaker system. Not just because of his familiarity with the processor architecture and the wide variety of tools and expertise in customizing the ARM processors, but because of the energy efficiency inherent in the ARM design.
"Embedded processors can reduce the capital and energy costs of a given level of compute power by about an order of magnitude, thereby significantly reducing the ownership (and environmental) costs," Furber and Brown write. "The embedded processor technology employed in SpiNNaker delivers a similar performance to a PC from each 20-processor node, for a component cost of around $20 and a power consumption under 1 watt."
So far the SpiNNaker team has designed processors with four and eight ARM968E-S cores, and run them through the simulator, and is pretty confident that it can crank the design up to 20 cores on a single die. In each set of 20 cores, one of the cores is designated as a monitor processor, a kind of head node for the SoC that controls how code is loaded on the remaining 19 cores, which will run the neural network simulation. Each ARM968E-S core will has 64KB of data cache and 32KB of instruction cache, a communications controller that simulates neural spikes using packets, and a memory controller to link to 1GB of DDR1 main memory (yes, DDR1, people) that is in the chip package but not on the die.
The communications network-on-chip (NoC) device was created by Silistix, a company that Furber created and spun out of the UofM. On the die itself, there is an on-chip interconnect that allows the ARM cores to access memory, networking ports, and other shared resources. The design embodies what Furber and Brown call a Globally Asynchronous Locally Synchronous (GALS) architecture, which again doesn't mean thinking about sex at all.
SpiNNaker's 2D mesh interconnect
What it does mean is that the simulated neurons can fire off a pulse to any other simulated neuron in the million-core system in about 1 millisecond, which just so happens to be about as fast as your neurons do it. The resulting interconnect fabric links the cores together in a 2D mesh network, which can be used to model 3D brain structures. 2D mesh networks are common in massively parallel supercomputers, although they are certainly not the only way to lash machines together.
Neither Furber nor Brown think that the SpiNNaker machine will help solve the wetware riddle of the human brain. But they think that a million-ARM machine will go a long way towards helping researchers run better models of the brain on a system that acts more like the human brain than previous hardware did.
Funding for the SpiNNaker project is being provided by the UK Engineering and Physical Sciences Research Council through the universities of Southampton, Cambridge and Sheffield. ARM, Silistix and military contractor Thales are also kicking in support.
Of course, to simulate 90 billion neurons (with some spares in the box) will take something on the order of 100 times more cores than the SpiNNaker system will have. If Moore's New Law – the number of cores on a chip doubles every 18 months – can hold for the next 25 years, then we'll be at a million cores or so per chip. So a hundred of those puppies – call it a rack – should be able to simulate a human brain. And here's the funny bit. Even if that does happen, and let's say it consumes 25 kilowatts to be generous, the human brain will do it at around 20 watts. Nature will still be winning. ®