Skip to 0 minutes and 11 seconds[BEEP] So in this video we're going to talk about Wee ARCHIE. So you've already seen a promotional video about Wee ARCHIE, but here we're going to go into a bit more technical detail. Now Wee ARCHIE is a machine that we've built at EPCC specifically for outreach events to illustrate how parallel computing, supercomputing works. And what we do is we take it to conferences and workshops and schools to try and explain the basic concepts. But here I'm going to use it as a way of explaining the kinds of things we've been learning this week, which is things like distributed memory computing, shared memory computing, and how they're put together into a real computer.
Skip to 0 minutes and 43 secondsWee ARCHIE has been built to mirror the way a real supercomputer like ARCHER, our national supercomputer, is built, but it's a smaller version and it's also been designed with a perspex case and designed in a way that we can look inside and show you what's going on. So it's very useful to illustrate the kinds of concepts that we've been talking about this week. So the ways in which Wee ARCHIE mirrors a real supercomputer like ARCHER are that is a distributed memory computer. It comprises a whole bunch of nodes that are connected by a network and we'll look at them in a bit more detail later on.
Skip to 1 minute and 16 secondsEach of the nodes is a small shared-memory computer, each of which is running its own copy of the operating system and in this, just like in ARCHER, we're running lots of copies of Linux. On Wee ARCHIE, we don't use very high spec processes. That's for reasons of economy and power consumption. So on Wee ARCHIE, each of the nodes is actually one of these Raspberry Pis. Now, a Raspberry Pi is a very low power and quite cheap processor, and these ones are actually small shared-memory machines. So each Raspberry Pi has actually got four cores on it. It's a small quad-core, multi-processor machine, a small-shared memory system, running a single copy of Linux.
Skip to 1 minute and 57 secondsNow we can look in more detail at how Wee ARCHIE is constructed. So if we look down here, are the computational nodes which is a four by four grid here. We have 16 Raspberry Pi boards, each of which, as I said, is running its own copy of Linux, and each of which is a small shared-memory processor with four CPU-cores. See here they are, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16. Again, just like on a real supercomputer, users don't log onto these computational nodes, they log onto some front-end login system. And up here we have a couple of spare nodes.
Skip to 2 minutes and 31 secondsHardware-wise, they're just the same as the main computational nodes, but they're reserved for the user to log on and do various other activities, compiling code, launching programs, and doing I/O and such like. So again this is a nice analogue of how a real parallel supercomputer works. Just to look in a bit more detail at the nodes of Wee ARCHIE. You will see there are some lights here. And what we've done for demonstration purposes is each node of Wee ARCHIE is connected to its own little LED array. You won't see particularly much going on at the moment, because we aren't actually running programs on these nodes.
Skip to 3 minutes and 1 secondJust for information, what they display are things like the network activity on the node, the temperature of the node, and also the activity, how busy each of the four CPU-cores is. The way the networking works on Wee ARCHIE is that each node has a cable coming out of it, a network cable, and here we just use quite standard cheap networking. It's called ethernet cabling. It's the kind of thing you might have at home or in an office. And the cables come out and they connect to these switches here.
Skip to 3 minutes and 30 secondsSo the way that two nodes on Wee ARCHIE communicate with each other is, if they want to send a message, it goes down the cables into one of the switches and then back up the other cable into the other node. Now we've turned Wee ARCHIE around to look at the back to illustrate a bit more how the networking works and a bit more about how it's all connected together. So if you can see, there are actually two cables coming out of the computational nodes. One of those is actually power, so we're not particularly concerned about that. The other connection is a network cable.
Skip to 3 minutes and 59 secondsSo the way it works, is that the cables for each node come down into one of these switches. And then the switches themselves, are cabled together. And this illustrates, in quite a simple way, how these networks are hierarchical. So for example, two cores on the same node, two CPU-cores in the same shared-memory processor can communicate with each other without going over the network at all. If two nodes are connected to the same switch, they can communicate with each other by sending the signal down and then back out of the same switch.
Skip to 4 minutes and 31 secondsIf two nodes are connected to different switches, the message has to go down into one of the switches along to the other switch and then back to the node again. So I mentioned in the articles that the network on ARCHER, the Cray Aries network, is very complicated, has lots of different levels. But even on a very simple machine like Wee ARCHIE, you can see the network has a hierarchical structure. And so that the way that two CPU-cores communicate with each other is different depending on where they are in the machine. Although it's been primary built as an educational tool, in fact, Wee Archie has a lot of similarities, as I said, with a real supercomputer.
Skip to 5 minutes and 6 secondsAnd just to reiterate, they're things like having a distributed-memory architecture of different nodes, each running their own operating system. The nodes are connected by networking. And each node is actualy a small shared-memory computer. The main way in which Wee ARCHIE differs from a real supercomputer, like ARCHER, is really in some of the performance characteristics. So for example, the processors aren't as fast as you'd find on a real supercomputer, the networking isn't as fast. The ethernet we have here is a lot slower than the dedicated Aries network we have on ARCHER. And also, of course, the sheer scale.
Skip to 5 minutes and 41 secondsHere we only have 16 nodes, each of which has four CPU-cores, as opposed to thousands of nodes with tens of CPU-cores in them. And so Wee ARCHIE mirrors a real supercomputer such as ARCHER in almost every way, except for just the speed and the scale.
Wee ARCHIE case study
Finally, Wee ARCHIE makes its appearance again! This video uses Wee ARCHIE to explain the parallel computer architecture concepts introduced in this week.
It is worth emphasising that the physical distance between the nodes does impact their communication time i.e. the further apart they are the longer it takes to send a message between them. Can you think of any reason why this behaviour may be problematic on large machines and any possible workarounds?
As usual, share your thought with your fellow learners!
For anyone interested in how Wee ARCHIE has been put together (and possibly wanting to build their own cluster), we invite you to follow the links from this blog article - Setting up your own Raspberry Pi cluster.
© EPCC at The University of Edinburgh