Sunday, March 11, 2012

ClusterF - 24-Core Linux Cluster in a different IKEA case

My son and I built a gaming PC for him about a year ago and it reignited my love affair with hardware.  I hadn't built a Ham radio in awhile and I was getting tired of my work issued notebook.  It started out to be a powerful single CPU computer for folding@home, rendering, astronomy,  AI, and practicing my parallel programming.

It turned into this.


Most of the parts.
Master (x1): - $745
1 - Asus M4A87TD/USB3 - $85
1 - AMD Phenom II x6 1100T - $175
4 - G.Skill Sniper 1333mhz 4GB - $80
1 - Corsair CX600v2 - $55
2 - WD Black 1TB in RAID0 - $140
1 - WD Green 2TB backup - $75
1 - ASUS DRW-24X DVD - $20
1 - PowerColor HD 5450 1GB - $15
1 - D-Link DGE-530T Network Card - $20
1 - USB/Audio/Media reader - $30
1 - CM Hyper 212+ HS - $30
1 - CM 140mm/1200rpm case fan - $10
1 - Scythe 100mm/1100rpm case fan - $10

Slave (x3): - $410
1 - Asus M4A87T - $75
1 - AMD Phenom II x6 1100T - $175
4 - G.Skill Sniper 1333mhz 4GB - $80
1 - Corsair CX430v2 - $40
1 - CM Hyper 212+ HS - $30
1 - CM 140mm/1200rpm case fan - $10

Misc: - $125
Netgear GS108 Switch - $45
Ikea PS Case (bottom half) - $50
Hardware/cables - $30
Debian Squeeze- $0

Total: $2100


I was very much inspired by the Helmer render farms from Janne's original, Tim Molter's version, bunnyburg and a few others.  I really like the Helmer but I had a few problems with it.  I don't like noisy fans and I don't have a closet to hide it in.  ClusterF is my everyday workstation.  It sits right beside my desk and the man cave hits 80 on a hot summer day.  I needed to move lots of air with larger, quieter fans.

On a trip through Portland my wife and I stopped at the Ikea store to see what all the fuss was about.  I was amazed how tiny the Helmer was in 'person'.  I looked around and stumbled on the PS cabinets in several incarnations.  Some quick mental math told me that a couple of the models would work but I liked the vertical format of the gym locker style.  The man cave is already crowded and going up would work better.

The car was already packed to the roof but somehow we wedged the PS in for the 500 mile drive home.  I second guessed my layout math for the rest of the day but figured if it didn't work we could put it to its intended use as a cabinet. 
 



The construction is very similar to the Helmer.  It's a lot of measuring, template building, head scratching, cutting, attaching fans and power supplies to the back and putting the motherboards in the front.  Most of the Helmers are a rack of independent computers, each with its own hard disk and graphics.  I had decided before I settled on the Helmer/PS type of cabinet to build ClusterF as a master node with graphics and hard drives and three diskless, headless slave nodes.  I couldn't easily get all of the master node on the top so I put the DVD and USB/Media reader on the top, the hard disk stack on the third level and the network switch on the second level.

I spent a lot of time bruising my hand with a nibbler cutting out all of the openings.  I tried using some tape to keep the paint from peeling at the edge of the cut but it just keep jamming the nibbler.  I though about using a Dremel but it just seemed like an inexact way of making the cuts.  The templates I made worked very well and the fit is very good.  My only regret is the chipping paint at the edge of the cuts.





I'm putting all of the nodes on the gigabyte switch and using the PCI network card to connect to the 100mb house network and the internet.  The switch comes with a 12v wall wart and a future project is to convert it to run off of one of the master power supply Molex connectors. Rather than run my HDMI monitor cable in through the front I added a panel mount HDMI jack on the back that plugs into the graphics card.

The cluster has a motherboard/power supply/exhaust fan/accessory on each shelf.  The basic layout is 140mm exhaust fan on the rear left panel, power supply on the rear right panel, motherboard on the front left of the shelf and the accessory on the front right of the shelf.  The 'accessories' are a Gb switch on shelf two, a HD stack on shelf three and the DVD/media/audio/USB stack on shelf four.  Each 140mm exhaust fan is powered by the motherboard on its level.  The switch, HD stack and media stack are all powered by the master power supply on the top shelf.




 

Since I'm building my own case from a gym locker I had to come up with most of the hardware that is included with a commercial computer case.  Well, let me tell you, as John Madden says, 'ACE is the place'.  A trip to the local Ace hardware store yielded 1/2" nylon standoffs and 8-32 bolts/nylocks for the motherboards and hard disk stack.  At HomeDepot I picked up some Simpson Strong-Tie TP45 brackets to make the hard disk cage and some 1/2" grommets for the network cable and switch power cord.  The led lights, power switches and wire for the wiring harness came from Radio Shack.  The fans and power supplies came with their own mounting screws.

 


The TP45 bracket has holes spaced 2" apart that match up perfectly with the 3.5" drives.  A little matte black paint and they were 'professional' looking.  I attached the drive stack to the third shelf with the 1/2" nylon standoffs and screws into the bottom HD mounting holes.  The 19"/.5m Sata cables were 'just' long enough to reach the back left corner of the master motherboard on the shelf above.  These were the cables that came with the motherboards.  If I was buying them I would get 24" or longer cables.  I attached the 100mm Scythe fan to the front of the HD stack with some double sided foam tape.  It is connected to the master motherboard with a 3-wire 12" extension.



Installing the parts for the master/top shelf got a little tricky.  When I originally did the layout for the case I was using the stock heatsinks.  With the master node running at 100% CPU the processor was at 52C.  That is fine in the winter but I didn't think I had the headroom for summer temps so I decided to get a bigger/better heatsink.  As you can see in the picture the back of the DVD burner almost touches the heatsink and in fact the Sata power connector does touch the side of the heatsink fan.  The heatsink just does clear the G.Skill Sniper memory by about 1mm.  The HDMI connector on the graphics card just does clear the power supply and the RJ-45 cable connects to the PCI network card only with the strain relief pulled back.  As noted below in things to do differently I would move the motherboards 1/2" to the left.


The ClusterF control panel is on the top front of the case.  There is a power switch and power led for each node.  There is also a hard disk activity led for the master hard disk stack.  The activity led is in the middle and the power switch/led pairs for from top shelf on the left to bottom shelf on the right.

The wiring loom runs from the front down the top left edge to the back left and then down the back left side to each of the motherboards.  Each motherboard came with a 20 pin connector that fit the 20 pin system header on the board.  I soldered the loom wires directly to the switches, leds and to the 20 pin connector.  I then plugged the 20 pin connector on to the motherboard.  The switches are momentary contact, normally open.  The leds came already wired with a resistor for 12 volts.

After I assembled the cluster I decided to swap the heatsink fans to the back which makes them pull air through the fins instead of pushing it.  I know this can be a religious topic but I didn't see any difference in loaded CPU temperatures.

At some point I will probably cut most of the panel out of the front door and replace it with mesh and then mount it on the case.  The case breaths well and with a 21C ambient temperature the CPU is at 41C with the heatsink and exhaust fans running at ~1200 rpm.

I only have four nodes compared to Helmer's six but with the x6 processors I still have the 24 core as Helmer.  I started out with 8gb per node but I weakened when memory went on sale and added another 8gb each.  It remains to be seen if I'll ever actually use it. Some of the prices may seem odd but they reflect sale, promos and rebates.  I didn't plan to buy the fastest PII x6 processor because they usually cost a premium but it went on sale for only $5 more than the 1090T which is usually the better buy.  The video card was regularly $50, on sale for $30 with a $15 rebate.  I did get my hard disks before the flood prices hit but I didn't get the 212+ on sale for 33% off.

The two 1TB drives in RAID0 have an average read rate of about 200mb/sec.  I know RAID0 isn't supposed to be reliable but I backup the entire system routinely and there isn't really anything on the system that I can't live without if I get a crash.

The slaves will netboot from the client and quite a few of my intended projects have a high level inter-process communication. It will be interesting to see how network bound the processes get.  Since I do have an 8 port switch I could add a PCI GB card to each node to get some more bandwidth.

The master node currently uses 190 watts at the wall at 100% CPU.  It probably would have been fine with a 430 watt power supply but I might add a much more powerful video card someday.  The current video card is powered only by the PCI bus.  The slave nodes probably don't need a 430 watt power supply but I didn't find any smaller capacity 80-plus power supplies for less than $40.  All of the power supplies load up enough to get them in their most efficient load range.

Thanks to all the Helmer/Ikea builders before me for sharing.  Your lessons learned made mine a fairly smooth project.

Things to do differently:
o Move the motherboard 1/2" to the left to provide more room for the motherboard back panel connections.
o Paint the DVD player black. 
o Get a master motherboard with Firewire.  
o Make an adapter cable to power the network switch from the master power supply.
o Make a couple of extra 1/2 grommet holes on the back panel.
o Group the power switch/led a little closer to each other.
o Buy the CM Hyper 212+ at 33% off even if you aren't sure they will fit.

8 comments:

  1. WOW!! This is really great. Could I get some advise from you. I am a 3D Artist with a new company and I am in the market to put together a nice size farm. Would you be able to give me any tips. Maybe even I could send a few bucks your way to help me out? Thanks! Please feel free to email me at

    benbmore3d@gmail.com

    ReplyDelete
  2. Thanks for your post. I was planning to build a Helmer cluster, but the motherboard I ended up with was too big. So while at Ikea I ended up with the same cabinet as you did. Do you know where I can find good measurements of the shelf size?

    ReplyDelete
  3. vivekg,

    I must be missing something. You bought the cabinet but are looking for the shelf measurements? Just open the box and apply a tape measure. Are you asking how far apart the shelves are from each other or for more information on my component spacing?

    There are several things to consider when assembling the parts on a shelf.

    - if you are going to used video or other cards verify their length before you assemble, my video card only fit because the power connector was on top of the card.

    - make sure you will have enough room for cables between the 'back' side of the motherboard and any other components you are putting near it.

    - don't snap the top on too firmly, it is a pain to get back off. Pinch the punch outs that grab the lid so it slips off more easily.

    Let me know if there is anything else I can help with. Please blog your build, we all love to see other's projects.

    ReplyDelete
  4. I was curious about the shelf size so I could do a paper plan before I opened it, in case I needed to return it for a different cabinet. Thanks for the tips. Also, did you actually screw the board down through the risers into the shelf or leave it mobile? I am planning to take pictures of the build process and will post it when complete. I'll post a link when I finish. Thanks again for your post and the info.

    ReplyDelete
  5. I can throw a tape measure on mine tonight.

    You can also send me an email address and I will just delete that comment as I moderate the comments before they are published. That way we can converse in more detail than the comments warrant. Hopefully we can save you a few of the hurdles I ran into.

    ReplyDelete
  6. hey i am planning on building a folding farm using a similiar style to yours however i have an old dell 4400 case hanging arounf and i think it would be pretty cool if i can get all 4 nodes in there so yeah email me

    alex.chi@me.com

    ReplyDelete
  7. My old Helmer render farm is up for sale on ebay now. http://www.ebay.com/itm/111152297951

    ReplyDelete
  8. Since the build the Linux cluster has morphed into many other things. The case with the power buttons, lights, wiring is for sale. It does not include any of the computer components, network switch or fans. If you are local to southern Idaho it is a really good deal at $100.

    ReplyDelete