'Human brain' supercomputer with 1M processors switched on for first time
manchester.ac.uk
manchester.ac.uk
Could someone elaborate? I am probably missing something as I hadn't heard of moving parts on a solid-state device?
If this university is anything like the ones I went to, the press releases are written by journalism and communication students to give them some hands-on experience.
I kinda doubt that.
I seriously think that a major reason for the lack of public scientific literacy (I get an earful of anti-evolution, anti-climate change, anti-Big-Bang crap from my conservative family) is the lack of a competent institution for communicating these truths.
Outside of scientific journals, and the occasional pop-sci bestseller, the average person has to rely on university press releases, bloggers, and magazine writers - and they generally seem to be terrible at their jobs.
Fixed that for you
At least anecdotally, my conservative family is like this because those topics have been used in the past to attack/bludgeon their religious beliefs which leads my family to dig in their heels, double down on their beliefs, and close their minds to accepting them.
I've made a lot of progress by instead showing how those things are not only not anti-religious topics, but quite the opposite - they bring us closer to the truth of how God accomplishes what he does. Once they feel that their core beliefs are not being threatened, but merely augmented, it's much easier to accept them.
I mean, I'm all for more engagement and scientific literacy, but let's not pretend there isn't some conflict here; specially for the more hardline churches -- while catholicism in particular seems happy to transition its role (into important lessons and social support) and turn dogma into allegory.
Science and religion can get along just fine.
Half of the craters on the moon are named after priests. "Cells" are named for the places where monks live. The Vatican has operated scientific observatories for centuries. There's even one in Arizona that makes important discoveries to this day.
The whole science vs. religion meme is something that the internet has amplified out of proportion by latching onto fringe groups and smaller denominations and holding them up as the only kind of religion that exists, creating artificial levels conflict to justify their position.
Sure, religious folks often don't have a problem with simple empirical observations (I mean, the Catholic church _did_ get around to pardoning Galileo 350 years after they murdered him).
But Lord help you if you apply the scientific standards of empirical rigor or explanatory parsimony to any topics further afield. Most obviously, there isn't a shred of evidence - none whatsoever - for the existence of a divine being along the lines of what's posited by the Abrahamic religions.
There's a lot of people you can reasonably argue were murdered by the Catholic Church, but Galileo isn't one of them.
This isn't the place for a discussion about the details of religion, but I guess my response to this is, "So what?"
You may need evidence, but people who believe in God don't need evidence. To them, God exists whether there is evidence or not.
At one time there was no evidence that hydrogen existed, yet is was still there.
At one time there was no evidence that x-rays existed. But they were still there.
At one time there was no evidence of other galaxies or planets. But they still existed.
Something can exist without there being current scientific proof of it. That certain people can see beyond what is physically in front of them is called "faith."
Adopting this scientific principle basically undermines all religious thought. Why am I bringing this up? Because it underscores a deep epistemological and methodological differences between religion and science.
I'll just copy-paste another comment I apparently made 4 years ago... (Time flies I guess!)
https://news.ycombinator.com/item?id=7899626
Of a particularly relevant note here is agnosticism [1], or the viewpoint that there are certain things that are simply unknowable to humans. The implication being that humans can neither confirm NOR deny the truth value of the statements. Metaphysical statements often fall into this category. And hence, you can also have agnostic theists [2] and agnostic atheists [3], who both recognize that they are taking a stance on an unknowable truth value. Some would then define this as the very essence of the word faith, but I would like to at least point out that both sides are subject to the same definition.
[1] http://en.wikipedia.org/wiki/Agnosticism
This bludgeoning, historically, especially in the US, has gone almost entirely outward from Christian conservatives, though inventing fantasies of attacks on the Christian community has been a key mechanism the leaders within that community have used to rally their congregation into participation in the bludgeoning; the persecution complex of the most politically, economically, and socially powerful religious group in the nation is the result.
The problem is also compounded by the fact that Wikipedia discourages primary sources in favor of shoddy reporting. It makes sense to reject self published scientific articles in favor of journal-published articles. But more often than not, modern media outlets just seem like a vector for adding political bias and inaccuracies by reporting on things they don't really understand.
HN is funny...
This article was published before the 2016 election, so at the time it might have been merely naive, but I see that the author has a video from just a few months ago where he "explains that the real war on science is the one from the left." He is absolutely not arguing in good faith.
[1] http://columbiaclimatelaw.com/resources/silencing-science-tr... [2] http://columbiaclimatelaw.com/silencing-science-tracker/fws-...
https://www.nature.com/news/intelligence-research-should-not...
Objectivity is dead.
Not just science journalism. I've yet to see a journalist get a story 100% right where I knew the facts personally ahead of time. If you're lucky, they've just garbled people's names...
Try 10 billion
https://venturebeat.com/2018/10/30/apple-announces-a12x-with...
SpiNNaker is built using old ARM968 cores on an ancient process (because that was cheap, for various reasons). The SpiNNaker2 hardware (under design; I can't remember if it is next year or the one after when it is finalized) will be on a modern process that will let us pack ten times as many cores on per chip, with those cores being quite a lot more powerful. Which isn't bad; we're not a commercial outfit here…
No, it's a terrible way to do it. It's fundamentally wrong. It's not even reasonable metaphorically. It's like trying to explain the automobile to a 17th century pirate and saying it's a horse with 4 sails.
Why write like this?
Either the writer is trying to dumb it down to a ridiculous level or they have no idea what they are talking about and just threw technical words together.
I think the writing in this article is not so good, but I've seen this usage by plenty of respectable writers. Stephen Hawking's "A Brief History of Time" is not comically bad writing, and it's full of even more outlandish usages of "million million million ..."
https://www.google.com/search?q=brief+history+of+time+"milli...
>> The world’s largest neuromorphic supercomputer designed and built to work in the same way a human brain does
Project lead:
>> We’ve essentially created a machine that works more like a brain than a traditional computer
Press releases, ladies and gentlemen.
The key however is that SpiNNaker is a MIMD system (the cores are really independent of each other, except for a shared clock and chip-level shared co-packaged SDRAM) with a very fancy fast multicast interconnect that's been tuned for handling small source-routed packets without guaranteed delivery (but with guaranteed detection of failure to deliver). It's the almost complete antithesis of MPI, and it is by using that well that we get great performance in neural simulation. (I'm a software developer on the team.)
It's not at all like IP. The basic message size is (IIRC) 64 or 96 bits, comprising a system control word, an application header word, and an optional payload word. The application header word describes what the identity of the sender of the message is (well, in theory it could describe the destination too, but then we'd not have enough space to address much at all) and is used in the routing of the messages. Each chip has a very fast masked CAM (the key IP of SpiNNaker) that is used to convert from the application header word to the destinations to deliver that packet to, which is one channel to each core on the chip and one channel to each direction in the logical triangular mesh in which the chips are connected. The router is very fast indeed, and very low power, so we can generally count on routing a packet right to the opposite side of the machine in a few milliseconds, and I'd have to look up the energy cost of a packet (we've published it, but I forget where). I believe our route planning software takes this delay into account. It also tries to put neurons that communicate with each other close together.
For greater delays than that, we also have a delay slot system (for up to 16 simulation timesteps, which is approximately 16ms) in our synapse model, and specialized pseudo-neurons that implement longer delays than that on cores that we set aside for the purpose (and which, because they only handle delays, are much easier to make scale).
We do source routing mainly because this was hardware designed from the beginning to do neural simulation; source routing is a natural way to implement (an abstraction of) axons, as each axon is capable of connecting to many different dendrites. This is very much an abstraction of what happens in reality, but it has worked well for us. Also yes, our routing algorithms most definitely do try to limit the amount of traffic going down each communication link. Since communication during execution is pretty predictable (at least statistically) this is far more practical than with IP, where the dominating factors relate far more to being able to manage the network without knowing its total state.
> specialized pseudo-neurons that implement longer delays than that on cores that we set aside for the purpose (and which, because they only handle delays, are much easier to make scale)
I'm curious to hear more about that, as I don't recall hearing that previously. I'm a dev on the Virtual Brain, another simulator starting to be used in HBP (CDP8), for which we derive tract length info from human diffusion imaging and use it to introduce time delays. These can be up to 256 ms. On the other hand, we're usually running a few hundred neural masses (or some specialized datasets go up to 515k nodes). Are those numbers feasible with your delay-neurons?
I don't mean SpiNNaker isn't interesting, and I've been pointing it out as such for years but it's been basically unknown even relatively locally.
But since it's all done in soft realtime with very low level code (and no hardware floats in the current hardware generation) and not much of an OS, it's a very unusual platform for people to work with. Much more like programming used to be like in the 1980s, if my memory serves me right. (One of the key distinguishing things about SpiNNaker in the field of neuromorphic systems is that actually has an OS at all. Most competitor systems are purely bare metal, as they're put together by deep hardware hackers without consulting software engineers.)
[0] https://www.verywellmind.com/how-many-neurons-are-in-the-bra... [1] https://en.wikipedia.org/wiki/Neural_oscillation
Dendritic branching can be extensive and in some cases is sufficient to receive as many as 100,000 inputs to a single neuron. https://en.wikipedia.org/wiki/Dendrite
A more conservative 10,000 * 200 Hz ~= 2 Mhz * 100B ~= 100 Million 2 Ghz processors cores.
Though each dendrite is again doing far more than one calculation per each of those cycles.
I recognize that the specifics are very different between a single neuron and a single processor, but the processors are so much faster that I'm inclined to give some benefit of the doubt to the people actually in possession of the array of 1M processors.
A you can think of a single dendrite as ~1,000 bits of information though it's hard to say how much of that information is useful as it's rather complex chemical signaling. Which gets into why opioids get people high for example.
maybe but that doesn't account for extensive nonlinear computation happening along dendritic arbors. Think vast decision trees resolved in parallel, per neuron, at 200Hz.
So anything your brain can think in 1 second needs at most a depth of 200 layers.
(its probably a meaningless analogy)
Yes, bits of the synapse processing code are in assembly coded to waste not one cycle at all. It turns out to be vital to do that in order to keep the efficiency high (and that has many key knock on effects; the synaptic density is a critical parameter for overall model scaling).
In any case, to say that neurons process information at 200Hz is wrong. Or rather it is not even wrong. The individual neurons don't really do very much, but the overall network does a lot and it isn't limited to 200Hz at all. It's just that it handles time in a totally different way to conventional computers...
We do plan to simulate the mouse brain, but our interests are more in understanding network-level mechanisms that are difficult to study at the neuron or whole-brain levels. The meso-scale stuff is where understanding is critical and tricky.
This looks more or less like another stab at the Cray connection machine[0], but with modern hardware and a better framework about how neural nets can and should work.
> The SpiNNaker engine is a massively-parallel multi-core computing system. It will contain up to 1,036,800 ARM9 cores and 7Tbytes of RAM distributed throughout the system in 57K nodes, each node being a System-in-Package (SiP) containing 18 cores plus a 128Mbyte off-die SDRAM (Synchronous Dynamic Random Access Memory). Each core has associated with it 64Kbytes of data tightly-coupled memory (DTCM) and 32Kbytes of instruction tightly-coupled memory (ITCM). The cores have a variety of ways of communicating with each other and with the memory, the dominant of which is by packets. These are 5- or 9-byte (40- or 72-bit) quanta of information that are transmitted around the system under the aegis of a bespoke concurrent hardware routing system. [1]
So, lots of relatively relatively tiny, interconnected nodes.
They built their own SoC to handle this. With a built-in router in the middle. The router handles routing on the chip, and multicasts to its neighbors.
> The heart of the communications infrastructure is a bespoke multicast router that is able to replicate packets where necessary to implement the multicast function associated with sending the same packet to several different destinations. [2]
It also looks like they're developing dev boards [3]
So basically, this looks like a giant, really awesome, custom ARM cluster that they want to do neural network stuff with.
If anyone from the team is here, I'd love to hear more about how this will be used. Specifically, how will you prevent SpiNNaker from going down the same path as the Connection Machine - (stops doing AI stuff because, say, geneticists want to use it for protein sequencing)? Why do you see this as the future over something like NVIDIA's new HGX-2 or clusters of TPUs?
[0] https://en.wikipedia.org/wiki/Connection_Machine
[1] http://apt.cs.manchester.ac.uk/projects/SpiNNaker/architectu...
[2] http://apt.cs.manchester.ac.uk/projects/SpiNNaker/SpiNNchip/
[3] http://apt.cs.manchester.ac.uk/projects/SpiNNaker/hardware/i...
a) Wasn't manufactured by Cray. It was made by Thinking Machines Corporation in the greater Boston area.
b) Didn't have anything to do with neural nets, as it was developed during the period of time when GOFAI / symbolic AI was still in vogue (although by the late 80s the Japanese had revived connectionism / neural nets), and thus had far more in common with a LISP machine.
c) Was mostly about developing a decent SIMD architecture.
I'm on the team. I can say that we're specifically funded to do and support computational neuroscience. However, if someone comes along with money wanting to do other kinds of projects on the hardware (and are able to handle the special characteristics of the machine itself) then they're welcome. The challenge is that it's non-conventional in a number of ways that make porting code tricky: in particular, the messages are small, designed to be multicast rather than unicast, the instruction memory per core is only 32kB, and there's no hardware floating point at all in the current generation. (You can do floating point in emulation. We do that in one of our projects.)
> Why do you see this as the future over something like NVIDIA's new HGX-2 or clusters of TPUs?
We see it as solving different problems. Those approaches you mention are great for solving problems that resolve to big matrix operations; SpiNNaker is better at tackling problems that are dominated in terms of description by communication. Neural simulations are really just vast hybrid ODE systems, but where it is possible to break up the simulation into lots of communicating domains (the synapses and neurons).
> To reach this point it has taken £15million in funding, 20 years in conception and over 10 years in construction, with the initial build starting way back in 2006.
Wow, those numbers.. and 10 years to build... I’d be very excited to turn it on!
So, 18 cores per chip. 55,556 chips. £270 per chip.
Still pretty good, considering the £15M is paying for more than a pile of chips.
[1] http://apt.cs.manchester.ac.uk/projects/SpiNNaker/SpiNNchip/
I don't think that those are terms of art.
What it could be useful for is neural structure modeling at a more primitive layer, even if the end outcome isn't usable for practical consumption.
But being able to simulate neural networks that can do their learning on-line and in real time, all while actively processing input (and in a controlled fashion) is an interesting capability anyway, as it means SpiNNaker can control physical robots in interesting ways (and those may be commercially interesting). And it's low-power enough that doing this in the wild is practical, rather than needing to upload everything into the Cloud for analysis. That may also be commercially interesting.
[0] https://books.google.com/books?id=VjZyDwAAQBAJ&pg=PT597&lpg=...
https://www.ssllabs.com/ssltest/analyze.html?d=www.mancheste...
Thanks for checking!
http://thepequodblog.blogspot.com/2008/01/fredric-browns-ans...
Powers of 10 ... 10 fingers on the ape-man. Such a weird non computing number to be thrilled with.
I'm always suspicious when numbers fit into powers of ten like that. Like, somewhere in that build process the person who holds the purse strings doesn't know binary.
The actual figure is (for technical reasons) a multiple of 2592. Those technical reasons? That's the topological tiling unit used in the overall toroidal mesh (48 chips per board, arranged to tile in groups of three boards, all times 18 which is the number of cores per chip; 1 OS core, 16 application cores, and 1 bonus that is sometimes available and sometimes not, in order to keep overall chip yields sufficiently high).