Shop OBEX P1 Docs P2 Docs Learn Events
Why does someone need a 40-Node Raspi? — Parallax Forums

Why does someone need a 40-Node Raspi?

TCTC Posts: 1,019
edited 2014-02-19 06:14 in General Discussion
Hello all,

While looking through Hack-A-Day, I came across a 40-Node Raspi Cluster. It is cool and all, but what is it for? What are the needs for it? Couldn't a quad core computer running at 4GHz be a better option? There are so many questions this brings up.

Thanks
TC

Comments

  • Heater.Heater. Posts: 21,230
    edited 2014-02-19 04:13
    Come on. The Raspi a geek toy. Building a cluster and getting distributed parallel processing going is what uber geeks do. Of course someone will make a cluster of Pis.

    Aside from just geeking out if you happen to be a professor that wants to teach a class on distributed parallel processing then a cluster of Pis is a very cheap way to do it. It does not matter if the thing is not as quick as you would like. That is the case for at least one such cluster built in the UK.

    And what if you are looking into algorithms for building fault tolerant muti-node machines?

    From the builder of that Hack-A-Day cluster:
    I needed a computing cluster that I could use for testing distributed software. Since I don’t have free access to a traditional supercomputer, I decided to build my own.
  • TCTC Posts: 1,019
    edited 2014-02-19 04:57
    Heater. wrote: »
    Come on. The Raspi a geek toy. Building a cluster and getting distributed parallel processing going is what uber geeks do. Of course someone will make a cluster of Pis.

    Aside from just geeking out if you happen to be a professor that wants to teach a class on distributed parallel processing then a cluster of Pis is a very cheap way to do it. It does not matter if the thing is not as quick as you would like. That is the case for at least one such cluster built in the UK.

    "Geeking out" for me, is when I see/do something amazing mechanically with a car. IE, 2 motors in one car, Twin Mill.

    What is the purpose of "distributed parallel processing"? I looked at Wikipedia, and I don't really understand where excluding a supercomputer, would be beneficial for the average person. I am not asking to be difficult, or to upset anyone, just to get a better understanding.
    And what if you are looking into algorithms for building fault tolerant muti-node machines?

    Ok, now i'm confused.:smile:
  • mindrobotsmindrobots Posts: 6,506
    edited 2014-02-19 05:32
    TC wrote: »
    "Geeking out" for me, is when I see/do something amazing mechanically with a car. IE, 2 motors in one car, Twin Mill.

    What is the purpose of "distributed parallel processing"? I looked at Wikipedia, and I don't really understand where excluding a supercomputer, would be beneficial for the average person. I am not asking to be difficult, or to upset anyone, just to get a better understanding.



    Ok, now i'm confused.:smile:

    It wouldn't benefit the average person in the least (not much of what we do would directly), web-surfing, Facebook and Twitter and all those other important tools work just fine with the non-distirbuted computers they have. But, have you ever looked behind to see what Google and Facebook and Twitter run on? Have you ever considered how they handle the data they handle? Large (think thousands) distributed clusters of (relatively inexpensive) computers all tied together in a distributed cluster. When you consider you can build a 40 node cluster to learn/test/play with for $1000 or so, that's pretty cool!

    Take you Twin Mill car....put a microcontroller on each engine for engine management, put a RasPi in the cabin for passenger comfort, put one in the trunk with some media goodies for a media controller, put one under the dash for all the cool gizmos and switches and displays, put one someplace safe for your collision alert system, tie them all together with CANbus or something and you've just uber-geeked the electronic/automation part of your Twin Mill with a distributed system! Ok, now put this in something important and really expensive, like an airplane or space shuttle (if we still had those) and you know need things to be fault tolerant so you put redundant copies of these controllers around the system and several central controllers to manage it all. You need to be able to figure out and test the software that will make all these interconnected things work. Again, at $25-$40 a pop for RasPis, what a great solution for learning and developing management strategies.

    It's good stuff!!!
  • TCTC Posts: 1,019
    edited 2014-02-19 05:36
    Now see, that makes a lot of sense. Thanks
  • mindrobotsmindrobots Posts: 6,506
    edited 2014-02-19 05:58
    For anyone that hasn't seen inside a big data center. This is from Google and it's almost 10 year old technology so things have changed again.

    The company I work for has around 45,000 servers spread across 12 major data centers. We're just opening up a new data center that has a lot of the Google-type technology in it. It's amazing the compute density that can be crammed into a building...it's also amazing the power and cooling capacity that that building can consume.

    I think our current server deployment package is a rack full of high performance blades with racktop network and SAN switches. SAN storage is composed of enterprise class 1.3PB storage arrays. For "big data" node configurations, the storage and servers share the same rack so you have localized storage for the data base parts.

    It's all pretty cool stuff....some distributed, some stand alone, some hooked together into VM farms, some hooked together to provide virtual desktops.
  • Heater.Heater. Posts: 21,230
    edited 2014-02-19 06:14
    TC
    "Geeking out" for me, is when I see/do something amazing mechanically with a car. IE, 2 motors in one car, Twin Mill.
    Oh yeah. There are many kinds of geeks:)
    What is the purpose of "distributed parallel processing"?
    Perhaps not so useful for the average person at home. But as mentioned above we all use distributed parallel processing all the time without giving it a second thought. Think Google search, Facebook, Twitter etc. They all need a lot of computers working together to get the job done. And let's not forget our friends at the NSA. Hi there NSA folks!


    Anyway, someone has to know how to put all that stuff together. A Pi cluster might be a good cheap start.


    As for the fault tolerant stuff. Well if you are designing an aircraft fly by wires system or some such you might want it to continue working even when bits of it have failed. Saves the all the expense and embarrassment of killing all your passengers:) So let's use, say, four computers instead of one. All doing the same control calculations. Let's arrange that if one of them dies the system can continue working with just the remaining three. Ah, but now you have an interesting software problem. How do those four machines keep in synchronization? How do they find out which one is acting in error? And so on.
    Of course google and co. use solutions to that problem as well to make sure their services never stop.
    See: Byzantine Generals problem: http://en.wikipedia.org/wiki/Byzantine_fault_tolerance
    Surprisingly a good solution to that was not discovered until 1999.


    Oh yeah, those bitcoin miners love distributed parallel computing.
Sign In or Register to comment.