University Team Builds Lego and Raspberry Pi Cluster
hypnosec writes about a neat little hack using Lego, Raspberry Pis, and Scratch to construct a "supercomputer." From the article: "A team of computational engineers over at the University of Southampton led by Professor Simon Cox have built a supercomputer using Raspberry Pi and Lego. The supercomputer is comprised of 64 processors, 1TB of storage (16GB SD cards in each of the Raspberry Pis) and can be powered on using just a single 13-amp mains socket. MPI is used for communications between the nodes through the ethernet port. The team managed to build the core of the supercomputer for under £2500. Named 'Iridis-Pi' after University of Southampton's supercomputer Iridis, the supercomputer runs software that was built using Python and Scratch. Professor Cox used the free plug-in 'Python Tools for Visual Studio' to develop code for the Raspberry Pi."
Lots of pictures of the thing, and a howto on making your own.
yeah 64* 256MB = 16GB
less than that is usable
even if you use the 240Mb split
but you do get 64 processors and 48*64 gpu processors - though using those is going to be a bit hard for a while
who where what when now?
Gussy it up however you want, Trebek. What matters is does it work? Will the Rasperry PI supercomputer calculate large prime numbers? Because I've ordered devices like that before - wasted a pretty penny, I don't mind telling you. And if the Rasperry PI supercomputer works, I'll order a dozen!
sudo make me a sandwich
One university managed to get a hold of 64 Raspberry PI units.
They should have built a Beowulf cluster. The regular one is such a cliché.
"Hello, IT... Have you tried turning it off and on again? Yeah... No problem."
So a cluster of 64 pi boards don't exceed ~3 kilowatts... Why would you expect them to given that they are supposed to run from a 5V supply at 1A (5W * 64 = 320W)
Sorry but doesn't even crack the top 10,000's in machine performance, not exactly a super computer. A cluster yes. Super computer, HPC machine, etc. no.
Can we now retire "Bewolf cluster" jokes?
Aaaargh...imagine a.....in the Soviet Union....***carrier lost***
Calling this thing a cluster.. fine.
Calling it interesting for students to learn about how clusters work... fine.
Calling it a supercomputer? Maybe if the University of Southampton got sucked into a time vortex to the early 1990's, and even then while the raw theoretical number crunching capability of the RPis would be impressive, the lackluster I/O and interconnects would mean that even supercomputers of that time would still win on many common workloads.
AntiFA: An abbreviation for Anti First Amendment.
Cluster of Raspberry Pis = Bramble. Slashdot has been so drooly over every nitpicky update about these, I thought everyone here would know that by now.
Whenever I see "professional" projects like this use legos- I have mixed feelings. Here is another example, a lab using legos for automation
I love to see legos doing advanced things, but for a chassis? I feel like people can be very smart, but sometimes afraid to learn how to build something with their hands. The lab example I posted above is at Cambridge University. Cambridge has a very competent engineering department, why not reach out to them?- It could have made for an excellent project for some engineering students.
I'm reminded of the very cited researcher who reinvented some calculus instead of simply reaching out to someone in another department for help
Your's wasn't the only one they had!
"Because we are not employing at entry level, offshoring will kill our industry stone dead."
SD cards are memory. Wikipedia: "Secure Digital or (SD) is a non-volatile memory card format for use in portable devices.".
Hard disks are memory too. So are tapes. So are CDs.
Just because you might habitually use "memory" as shorthand for RAM, doesn't mean it's the only meaning of the word. And why do you think we need the "Random Access" disambiguation?
I'm a big fan of the RP project. But I'm a bit bored of seeing news items in which someone does something with this Linux box, which obviously a Linux box can do. Raspberry Pi compiles C! Raspberry Pi controls a robot! Raspberry Pi runs MAME! Well of course it does, it's a little PC, and that's what PCs can do.
memory is shorthand for RAM? Which one is easier to say, and write?
I would like to recommend the red and white suited astronaut lego people to maintain the server, or to work as sysadmins. They seem very dependable. If not them, then maybe the Lego people from the 70s that didn't have the smiley face painted on them. They seem more analytical and inclined to this type of work. Anybody remember them?
Just because you might habitually use "memory" as shorthand for RAM, doesn't mean it's the only meaning of the word.
Exactly, everybody has known for at least half a century that we are supposed to call that one "core storage".
Ezekiel 23:20
Wouldn't a dual Xeon server be able to easily out-muscle that "supercomputer"?
"Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
I work with some people who persist in calling hard disks DASD -- even on PC hardware.
However, you do win a "Miserable git" award for being unpleasant about Prof. Cox.
From scarped cliff or quarried stone she cries "A thousand types are gone, I care for nothing, no not one."
When it's absolutely necessary to differentiate, use "primary storage" (typically RAM) and "secondary storage" (typically hard disk). After all, VRAM is essentially just using a secondary storage device for primary storage. RAMDISK is essentially using a primary storage device as secondary storage. The lines get pretty blurry if you try to say a specific physical device is only used as primary or secondary storage.
Supercomputer as in ' Super Structure' not as in ' Super Man'
Avoid your fears , or wonder at the past
I just did the math. The Pi community supposedly recommends a minimum of 1A@5V if you intend on using any peripherals, including ethernet. 700mAh is the minimum draw with *nothing* connected. 5W x 64 = 320W. That's quite close to the max capacity of the power supply for the dual-socket machine I mentioned. The E5-2620 processors have a max TDP of 95W each. Now, that doesn't count the auxiliaries - but there's still a 120W difference between typical power usage for the Pi, and MAXIMUM power usage for the Xeons, and I haven't even counted the power loss from the AC-DC power supply against the Pi (the rackmount machine's supply is ~95% efficient.)
Please help metamoderate.
Mmm, but it *is* a nice environment for *students* to experiment with the *principles* of parallel computing in a tactile manner.
I began learning to code on an 8 bit 2Mhz CPU, with 32KB of RAM. If I wrote an inefficient loop, I'd often notice the slowness without benchmarking. If I was careless with memory, my program would crash. On my quad core laptop today, I only notice issues like that if I benchmark or do deliberate load testing. So working on low-spec systems is instructive.
Likewise, working with clusters of low-powered units on a slow comms bus is going to teach these students a lot about optimising parallel programs. They're going to have to deal with race conditions, memory ceilings, etc. which might not even show up on faster systems.
Can I get nominated for that award? I'm creeped out by his Mini-Me son.
All parents that dress their children as tiny doll versions of themselves actually.
Sig. Sig. Sputnik
Exactly, whilst the system isn't powerful, it is instructive in cluster design and programming, which is very relevant at a university.
They won't be running "real applications doing real calculations" on this thing. They'll be writing student-level clustered applications. For the price paid, it's probably a really instructive system for the university to have installed, if they make use of it in student courses and/or projects.
So.. You have a little server there. Good luck with using it for teaching a bunch of students about how scalable clustered software works, how to write the software, what are the pitfalls and else.
Good luck running 64 separate VMs on your small server (not saying it's not impossible but I really wonder which one is faster to set up) and you won't be able to test any of the very different interconnects that easily.
WOOOOOOOOOOOOOOSH!
There is a whole lot of point missing going on here. Yes, you could build a faster computer cheaper using other hardware. But it wouldn't explain the concepts to children (and to first year CS students, which is pretty much the same thing) nearly so well. Throw together a heap of little itty-bitty boards each of which, individually is, as everyone knows, relatively low power, and knit them together with ordinary cat5 cable, and get out of the collection high compute performance, and you have something which will intrigue children|students and get them thinking about how it works. Show them an anonymous 1U box doing exactly the same job, and you won't get them thinking, because they can't immediately see and understand what it comprises and how it's put together. This is a teaching machine, not a practical machine. It's job is to teach students. It teaches students by being perspicuous.
It's not (yet) a requirement for getting a Slashdot account to demonstrate that you have an IQ slightly south of that of a stick of used chewing gum, but some of you clearly haven't yet got that message.
I'm old enough to remember when discussions on Slashdot were well informed.
You clearly need to turn in your Slashdot commenter license... to REALLY entice editors to post a story, work BitCoins into the mix. Oohh... better yet, work in references to the MPAA, And Ubuntu, and whatever else can be stirred into the pot. References to MAME are old school... (although that can be forgiven, Mr. 4-digit UID.)
How does this sound? "Raspberry Pi used to mine BitCoins to help pay an MPAA Lawsuit Fine. However, due to a security hole in Ubuntu caused by the new Unity interface, the new coins were stolen from the user by someone claiming to be affiliated with Anonymous. Wil Wheaton offers to sponsor a live D&D game played with Arduino-programmed robotic miniatures to make up for the lost funds."
Did I miss anything?
I thought the same thing. It's much easier to notice errors in your code and how the whole thing works when using a machine that is slow or purposely slow.
Religion: The greatest weapon of mass destruction of all time
Calculate the billionth digit of pi?
Good luck running 64 separate VMs on your small server (not saying it's not impossible but I really wonder which one is faster to set up) and you won't be able to test any of the very different interconnects that easily.
Very easy indeed, and almost certainly quicker/easier to set up than the physical way, either using something like Vagrant or by rolling your own scripts to drive VirtualBox.
However, I think it's instructive for students to do it the physical way first. By analogy: first understand LANs, then learn about VLANs.
....I can't even get one! I've been in the Queue since before initial release and still have yet to receieve mine, and even got an email two weeks ago about further delays!
Still a really great accomplishement though.
Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
But unfortuntately they would not sell more than one per customer - Unless you purchased one from both RS and Farnell. :(
I'd even bought a rack mount case to house the cluster
N...
Electronic Music Made Using Linux http://soundcloud.com/polyp
This story has built out of Legos, and Raspberry Pis, so it's definitely worthy for the slashdot front page. But it could be better, like they called the order in from their Nokia phone and paid for it using Bitcoins.
You mean you have reservations about stock shipping AMD server procs? If you want education you want to be able to do things like artificially inflate the latency of the linking network that's easy to do on VM's. Test the effectiveness of different storage methods vs the type of workload. Looks at nodes with different processing capabilities. Honestly I find it amazing hard to fathom that it took a whole group of people to stack 64 SBC's load them with an OS and connect them up to a switch. This is a mornings work for an intern.
Thanks for the miserable git been awhile since somebody called me names on the internet I'll try and be offended. I did not talk about the prof outside of mentioning that it was cool that be built it out of legos with his son.
No sir I dont like it.
There is a whole lot of point missing going on here.
You're the one missing the point here. I can fit in 1U what used to take an entire rack.
When you can fit that kind of power into 1U, and given the massive leaps in computing power per core, traditional nodes-connected-by-networks clusters are applicable for far fewer people these days. What they should be teaching is proper multithreaded programming techniques.
get out of the collection high compute performance
Were you not paying attention when I said that 64 700mhz ARM nodes connected via USB (which requires enormous CPU overhead, on a processor with virtually no cache and slow busses, which means lots of out-of-cache memory access and context switching) with shitty, slow storage - does not make "high compute performance"? That cluster probably struggles to match one single 6-core Xeon.
It's not (yet) a requirement for getting a Slashdot account to demonstrate that you have an IQ slightly south of that of a stick of used chewing gum, but some of you clearly haven't yet got that message.
http://yourlogicalfallacyis.com/ad-hominem
Please help metamoderate.
Heh, when I first came to work at my present job (30 years ago, ack!) One of the systems came with a drum storage system. It was never actually fired up; we immediately replaced it with a ramdisk emulation. Of course that system also had honest-to-god core memory. Those core stacks were WAY cool.
There is questionable benefit to having that tactile experience a)extend beyond a few nodes - certainly nowhere near 64 b)have it on hardware which resembles embedded systems, not real compute nodes. In short, it's teaching 15 year old HPC technology in an era where you can fit 64 cores into 1U for a couple grand.
Please help metamoderate.
Do they say TSO ehrn they're talking about a shell prompt?
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
When I was in university, I took a parallel computing course and we used MPI, same as these guys. Back then, all the personal machines were single core. If we were lucky we could test the program out by remote logging into the quad processor SUN machine. Guess what? We were able to learn quite a bit just running 64 different processes on the same box, even with just a single processor core. It would have been nice to have a machine around with 64 actual cores on it to see how things worked one everything was truly running in parallel, but we were able to do quite a bit with just a single machine.
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
Does it really have more computing power than a $2500 PC / worth of PC hardware (they did say core didn't they? So feel free to get 3-4 regular pieces of PC hardware in that case which it surely won't beat.)
Nothing super about it. Just multiple pieces.
It's field-specific. If it doesn't forget everything after power cycling, we in the computer business call that "storage."
In drag racing, quick and fast are different. In metallurgy, hardness and toughness are different. In typography, readability and legibility are different. In astronomy, revolve and rotate are different. Etc etc etc. Every field has terms like this and yes, it matters, and they should be used correctly when within that field. (Which we currently are: on a tech site, talking about technology.)
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
I forgot. Sorry. My memory isn't what it used to be.
Don't fight for your country, if your country does not fight for you.
Finding switches to do this would just suck. Most home switches are 8 port. So if you buy 9, 8 port switches and one 16 port 10 gig switch plug 7 in each of the first 9 switches that would get you to 63 that would leave one to plug into the hub. Plus each 8 port would need to be gig unless you can buy switches with single gig. or 4, 16 port gig switches with a ten gig uplink to a 10 gig switch any way you need enough to plug in all 64 +1 for the head node. any which way this is a switching nightmare. The head node needs a 10 gig so that it can handle all 64 nodes at 100 mbps. Each set of 8 gets close to a gig network traffic for the head node. so 64 nodes is 6400 mbps that is why I say 10 gig. Maybe I'm missing something but it seems complicated.
Even on modern PCs things like transcoding, compiling, etc. are still cpu-limited.
While technically RAM is not part of the CPU itself, I think you'll find most people don't consider memory access when calling something "I/O limited". That's more along the lines of network ports, hard drive, USB, firewire, thunderbolt, etc.
Something that I don't thing got much play in the article is that each of the 64 Pi boards has a SOC processor that in addition to the general purpose processor also includes a 48 core processor optimized for graphics. And yes in http://www.raspberrypi.org/archives/1967 they note that there is already code that can use those processors for graphics. I have little doubt that someone looking at the code can port one of the gpu processing libraries to make use of these processors for other numerically intensive purposes.
So don't forget to add in sufficient video processing to provide 3072 cores of processing equivalence to your rig. I suspect that you can figure out how to do that as you've already calculated what you feel is the equivalent general processing equivalent (or better) for your sample system. I'm not sure that the resulting system would still fit in a 1u case, but it might.
You never know...
It's field-specific. If it doesn't forget everything after power cycling, we in the computer business call that "storage."
Er, in my CS textbooks (admittedly from the early 90s), memory and storage are interchangeable terms, and RAM counts as "storage" too.
In those books, RAM is "primary storage" and hard drives are "secondary storage".
By a different definition, coming from a different part of the computing field, primary storage is what you get from malloc() and secondary storage is what you get from fopen() -- but we all know how blurry *that* can get.
I've been waiting since 26 June for my Pi. And this guy has 64, just for kicks! WTF?
I've got two...
No sig today...
Quite seriously, I wondered about making a cluster of Pis to replace a desktop PC I have running in the loft. It really just runs some web servers, PHP, Mysql and a few other fiddly things. I wondered if I could potentially even dynamically boot up Pis to cover load (ie. spin up some extra web servers when load increases). My big problem is the DB though - I mainly use Drupal, so don't have separate read and write DB handles, so I can't scale MySQL horizontally. Also, the ethernet isn't very fast, so the interconnects probably wouldn't work very well either. I thought about maybe using Beaglebones or Pandaboards. Whilst that have faster CPUs, they still only have 100MB networking, so probably a little less than ideal. After working through all that, I don't suppose I'd save that much power (or space?) from the desktop.
memory is shorthand for RAM? Which one is easier to say, and write?
Its also short for Bob.
How do you build a supercomputer out of processor modules that cannot reliably communicate with each other. The ethernet connectivity of the pi is based on a small module that attaches to the USB. I don't get it...
It varies, of course, but the most common current practice is "memory" (RAM) and "storage" (disk or solid-state -- the main thing is "long term" or non-volatile.). From the Wikipedia page on computer memory (which the GP did not quote):
The term "storage" is often (but not always) used in separate computers of traditional secondary memory such as tape, magnetic disks and optical discs (CD-ROM and DVD-ROM). The term "memory" is often (but not always) associated with addressable semiconductor memory, i.e. integrated circuits consisting of silicon-based transistors, used for example as primary memory but also other purposes in computers and other digital electronic devices.
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
Is your comparison fair? I don't work with hardware, so I claim no expertise here, but a quick shopping list shows:
- $549 at NewEgg for one AMD Opteron 6262 HE Interlagos 1.6GHz 16-Core Server Processor
- 4 x $549 = $2196 for just the CPUs?
- £2500 (GBP) ~ $4047 (USD)
- $4047 - $2196 = $1851
Is it really that much cheaper or better for their purpose? They're not looking for power/$ ratios. Clearly you would have a few Dollars left over to buy the other required parts for your server.
Please keep Purchasing Power Parity (PPP) in mind. Prices in the UK are not the same as in the US, simply using currency exchange rates does not give a meaningful comparison.