Slashdot Mirror


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.

36 of 147 comments (clear)

  1. Want by Sparticus789 · · Score: 2

    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
    1. Re:Want by the_humeister · · Score: 5, Informative

      Unfortunately, the term "supercomputer" isn't really being used properly. They built a cluster of computers, sure. But "supercomputer"??? Hardly. The Raspberry Pi uses a processor based on ARM v6. Lemme give a single-threaded rendering comparison (Povray 3.6 running the benchmark scene (here's what the benchmark image output looks like) with my old HTC Aria, which uses a Qualcomm MSM 7227 processor and has similar processor specs as the Raspberry Pi (ARM v6 + VFP2 floating point hardware):

      HTC Aria (MSM 7227 @ 0.6 GHz) *
          Debian 6.0(armel), gcc 4.4, -mfloat-abi=softfp -mthumb
          Parse Time: 0 hours 1 minutes 3 seconds (63 seconds)
          Photon Time: 0 hours 53 minutes 49 seconds (3229 seconds)
          Render Time: 57 hours 31 minutes 41 seconds (207101 seconds)
          Total Time: 58 hours 26 minutes 33 seconds (210393 seconds)

      For comparison, here's a faster ARM processor from my Samsung Galaxy S II:

      Exynos 4210 @ 1.2 GHz (ARM Cortex A9),
          Debian 7.0(armhf), gcc 4.6, -mcpu=cortex-a9 -mhard-float -mthumb -mfpu=vfpv3 -ffast-math -funsafe-math-optimizations
          Parse Time: 0 hours 0 minutes 4 seconds (4 seconds)
          Photon Time: 0 hours 1 minutes 33 seconds (93 seconds)
          Render Time: 1 hours 26 minutes 34 seconds (5194 seconds)
          Total Time: 1 hours 28 minutes 11 seconds (5291 seconds)

      And here's from an Intel Core i5 2400s @ 2.5 GHz:

      Core i5 2400s @ 2.5 GHz, Ubuntu 12.04, gcc 4.6, -march=corei7-avx
      Total Scene Processing Times
          Parse Time: 0 hours 0 minutes 1 seconds (1 seconds)
          Photon Time: 0 hours 0 minutes 14 seconds (14 seconds)
          Render Time: 0 hours 10 minutes 12 seconds (612 seconds)
          Total Time: 0 hours 10 minutes 27 seconds (627 seconds)

      The ARM v6 processor took more than 2 days to render something that takes 10 minutes on a Core i5. So, "supercomputer" this cluster is not.

      * You may say, "Hey, this test is running using soft-float! If you used hard float, it'd be faster!" Well, you would be right that it would render faster under hard float, but this processor still wouldn't finish rendering in less than a day, let alone come anywhere close to Core i5 or Cortex A9.

    2. Re:Want by the_humeister · · Score: 2

      Forgot to add the following:

      The image rendered is 384 x 384 pixels. MSM 7227 results are 0.70 pps and 1.17 pps/GHz. Raspberry Pi is runnying at 700 MHz, so it should theoretically get 0.82 pps. Its possible (and fairly easy) to split up the rendering among all the CPUs in this cluster with some custom scripting, so this benchmark image could theoretically render at 52.42 pps. That Core i5 2400s I mentioned above renders at 235.18 pps!

    3. Re:Want by Sparticus789 · · Score: 2, Interesting

      There's a bit of apples and oranges comparison there. You are comparing single-core processors to a quad-core processor. Of course the i5 is going to be faster. It would be better to divide the performance of the i5 by 4, to represent the performance of a single core of the processor.

      There's also a cost comparison. Just the i5 processor is ~$200, not to mention the motherboard, RAM, etc. Let's just say you can build a computer with an i5 for about $800 That's the same price as 32 Raspberry PIs. So if you take the MSM 7227 processing time and divide by 32, you get ~1.8 hours. Not stellar, by any means. However it is an interesting figure. There's also power requirements, cooling requirements, etc.

      Not saying that everyone should flock to SoC cluster computing, but the story is interesting nonetheless.

      And perhaps Celebrity Jeopardy was before your time.

      --
      sudo make me a sandwich
    4. Re:Want by the_humeister · · Score: 3, Informative

      Povray 3.6 is single threaded, so all results are single threaded.

    5. Re:Want by CastrTroy · · Score: 4, Informative

      Actually, Just ran a test, because I was a little amazed that the ARM 6 was so much slower than the A9. Here are my numbers. Parse Time: 0 hours 0 minutes 14 seconds (14 seconds) Photon Time: 0 hours 5 minutes 43 seconds (343 seconds) Render Time: 5 hours 58 minutes 53 seconds (21533 seconds) Total Time: 6 hours 4 minutes 50 seconds (21890 seconds) While the Raspberry Pi wasn't faster than the A9 (didn't expect it to be) it was way faster then ARM6 you tested on. Most likely due to the fact that it uses hard float.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    6. Re:Want by petermgreen · · Score: 2

      You may say, "Hey, this test is running using soft-float! If you used hard float, it'd be faster!"

      Massively faster

      http://www.raspberrypi.org/phpBB3/viewtopic.php?f=9&t=4256&start=175

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    7. Re:Want by petermgreen · · Score: 3, Informative

      The GPs figures are off. He is using a horrible compiler setup, not only is he using the softfloat calling convention, he is using -mthumb which AIUI will prevent the code from making direct use of the hardware FPU (and I suspect he uwas using debians version of libc preventing indirect use of the hardware fpc through libc routines)at all on armv6. According to hexxeh the povray benchmark under raspbian gives the following results under raspbian on a PI.

      Total Scene Processing Times
      Parse Time: 0 hours 0 minutes 16 seconds (16 seconds)
      Photon Time: 0 hours 5 minutes 57 seconds (357 seconds)
      Render Time: 6 hours 13 minutes 57 seconds (22437 seconds)
      Total Time: 6 hours 20 minutes 10 seconds (22810 seconds)

      http://www.raspberrypi.org/phpBB3/viewtopic.php?f=9&t=4256&start=175

      Your price figures are off too. An i5 based compute node can be built for more like $500

      Similarlly the real price of a Pi node is quite a bit more than $25. Firstly the Pi you can actually buy and would want for this task (clustering needs networking support) has a base price of $35 not $25. Secondly that price excludes things like the power power supply the SD card, the network cable and the mouning hardware. The real cost of a Pi node is probablly more like $50.

      So the Pi is about 10 times lower per node than the i5

      My overall conclusion is if compute power per dolar is your goal then a smamler number of i5s is a much better bet than a larger numer of Pis.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  2. Real news for this article by BooMonster · · Score: 5, Funny

    One university managed to get a hold of 64 Raspberry PI units.

  3. Not a `Super' computer by colin_faber · · Score: 3, Insightful

    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.

    1. Re:Not a `Super' computer by vlm · · Score: 2

      A supercomputer is any overall system that's IO limited not CPU limited like most machines. At least at full theoretical CPU use. Hard to define a rasp pi as anything other than IO limited, so... An alternative def more popular recently is programmer limited as in its hard to parallelize some algorithms. Either way it fits.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    2. Re:Not a `Super' computer by slim · · Score: 2

      A supercomputer is any overall system that's IO limited not CPU limited like most machines.

      So if I cripple all IO to my 486, except a 300 baud modem, I've built a supercomputer?

    3. Re:Not a `Super' computer by localman57 · · Score: 4, Funny

      You did? That's amazing! I'm submitting it as a slashdot article now.
      Man Builds SuperComputer from a 486 and a 300 Baud Modem

    4. Re:Not a `Super' computer by colin_faber · · Score: 2

      Sorry but this statement is completely wrong. HPC (Super computers) are a moving target and the term represents the top 500 (or less) machines world wide.

      This statement is also wrong in respect to I/O limitations as bottle necks have nothing to do with whether or not a system is considered a "Super computer".

  4. For the old timers by thammoud · · Score: 4, Funny

    Can we now retire "Bewolf cluster" jokes?

    1. Re:For the old timers by wild_quinine · · Score: 3, Funny

      Call me old fashioned, but my time on Slashdot has taught me that it's much better to *imagine* a cluster than to create one.

    2. Re:For the old timers by Anonymous Coward · · Score: 3, Funny

      Call me old fashioned, but my time in jail has taught me that it's much better to *imagine* a naked, petrified Natalie Portman covered in hot grits than to create one.

  5. Meme overload by Plammox · · Score: 4, Funny

    Aaaargh...imagine a.....in the Soviet Union....***carrier lost***

    1. Re:Meme overload by Howard+Beale · · Score: 2

      OMG!!! PONIES!!!!!!

  6. Abuse of the term "Supercomputer" by CajunArson · · Score: 3, Insightful

    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.
  7. It's called a bramble, guys by Bovius · · Score: 5, Funny

    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.

    1. Re:It's called a bramble, guys by History's+Coming+To · · Score: 4, Funny

      Brambles are blackberries, you'd need a cluster of mobile email devices to use that name. I believe this is the more generic "Thicket".

      --
      Please consider this account deleted, I just can't be bothered with the spam anymore.
  8. Mixed feelings by gblackwo · · Score: 2

    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

    1. Re:Mixed feelings by gblackwo · · Score: 2

      It is this kind of thinking that makes people build something out of legos instead of trying to learn a new skill.

  9. Re:Memory by slim · · Score: 4, Insightful

    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?

  10. Computer does things a computer can do! by slim · · Score: 5, Insightful

    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.

  11. Re:erm, good by jones_supa · · Score: 2

    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)

    The comparison point is that a 64-node cluster of regular PC hardware couldn't fit behind a basic mains line.

  12. Re:Supercomputer? by Kupfernigk · · Score: 3, Interesting
    Yes, you are missing something (though I have slight reservations about the 16 cores to a die CPUs you claim to be using). There's this thing called education...your large server running loads of VMs is not going to be nearly as useful or informative at getting the ideas across as a rig like this. There is a big difference between working with virtual networks and seeing the hardware of a real network, as well as being able to program the thing with "small" languages without monster frameworks just to make anything happen.

    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."
  13. Re:waste of money / publicity stunt by slim · · Score: 4, Insightful

    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.

  14. Re:waste of money / publicity stunt by hattig · · Score: 3, Insightful

    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.

  15. Re:erm, good by M1FCJ · · Score: 3, Insightful

    Of course, this being a teaching tool, having the performance would mean nothing. Having the discrete computing units do.

  16. Re:waste of money / publicity stunt by Simon+Brooke · · Score: 4, Insightful

    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.
  17. You forgot BitCoins!, the MPAA, and Unity, etc. by sirwired · · Score: 5, Funny

    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?

    1. Re:You forgot BitCoins!, the MPAA, and Unity, etc. by Rotag_FU · · Score: 2

      Yep, you forgot about how kick-starter was used to fund the creation of the robotic miniatures. Also, the Raspberry Pi was actually running MineCraft which had a working implementation of an 8-bit processor that was doing the actual BitCoin mining. Researchers were observing the operation of the MineCraft processor using the Oculus Rift headset. In the future, the designers plan to port this all to the upcoming Ouya.

      There, I think that has it covered. :)

  18. Re:waste of money / publicity stunt by CastrTroy · · Score: 2

    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.
  19. Re:erm, good by lister+king+of+smeg · · Score: 2

    sounds like the old mainframe vs x86 commodity server argument. small mobile tech will take the place of much of the current PC's because grandma doesn't need a PC to check email, facebook, play solitaire, and watch netflix, but the PC won't disappear just like the mainframe didn't disappear because it still has many more use's. in fact there are more mainframes sold per year now then there were in the pre-PC era. what we will see come from this will be a continuation of the trend toward less and less expensive hardware at lower power. facebook for example is trying to move to arm based server farms to decrease their energy costs.
       

    --
    ---Saying gnome 3 is better than windows 8 not so much a compliment as it is damning with light praise.