Tuesday, April 23, 2013

Raspberry Pi Cluster Rack Sketch

If you've looked at the earlier posts, you probably noticed the spaghetti with Raspberry Pis laid out in front of the display wall. +ET Parreira has certainly mentioned it to me, after he had to set up Pong after Triton Day. That's what happens when you're feeling your way around a new piece of hardware and just trying to get the code working.

Well, I agree that dragging around a bunch of re-purposed CAT5 cables (that's what the joystick cables are) that have been cut off and stuck into a bread board is not convenient. So, I spent some time sketching out a new rack for the cluster of Raspberry Pis that will drive the tiled display wall. The biggest design constraint is the cables that will be coming out of the Pis, particularly the HDMI and network cables. The power cables aren't particularly heavy, but the HDMI cables in particularly have a minimum radius of curvature (tightest bend radius) of about 4 1/2". Also, while this cluster will have video displays attached, we'll still need to connect keyboards to the USB jacks for troubleshooting. Anyone with experience in a data center knows where this thinking is coming from. The two possible arrangements that came to me immediately were:
  • Pis "on edge", with HDMI cables on top;
  • small stacks of Pis, spaced to provide room for the HDMI cables.

The small stacks version is roughly similar to the Southampton Supercomputer, with more room for the cables, with more space for cables. This is what we're going to try, for a very specific reason: easy mental mapping from the cluster layout to the display wall. The goal of this project, the SDSC Sandbox, is to teach parallel programming concepts to pre-college students, and the display wall provides a convenient mechanism to make distributed computing more tangible. By stacking the Raspberry Pis in the same physical arrangement (5 columns, 3 rows) as the LCD panels, it's easy to show the computers driving the displays. This layout isn't particularly efficient, but that's not the point.

Sketch Model

I am huge fan of sketch models: simple prototypes using disposable materials as a sanity check. Some of the best examples of these are in Design Squad. Design Squad is a reality show where high school students compete for a scholarship by building prototypes for various noble causes; it's about as close to the Raspberry Pi ideals as you can get. Every so often, the kids will get side tracked arguing, and one of the engineers leading the show will come in suggest they do a sketch model to get a feel for the idea. The end results are usually much improved by having a simplified model to hold.

Before I go out and buy some Plexiglas, threaded rod, and spacers, I wanted to see a couple of the Pis free floating in space using the mounting holes. As you might guess from the lead photo, the coat hanger provided the pillars for this. The platform is a cardboard lid that no longer has a box to cover.

I used the fine sculptures in the previous image to punch through the lid from below, using a Raspberry Pi as a guide. Note the holes in the wrong spots caused by my laying down the Raspberry Pi upside down. This follows my motto of: "Measure once, cut twice, and make cheap prototypes".

Removing the Pi from the bottom, I taped the bent metal to the bottom of the lid.
Flipping it over, I see the beginnings of a very inexpensive data center.
The straws were cut up for spacers, and after stacking a single Pi, the first expected outcome is seen--the center of the mass of the Pi isn't between the mounting holes. This isn't a shock, since the Ethernet and USB ports are two of the biggest chunks of metal on the computer. Maybe if we put another on top, it will provide enough downwards to level it
Yep. That totally fixed it. It even comes with dirty dishes to do after making a mess on the kitchen island.

Looking at the bottom Pi, this is pretty reassuring; it shows that very little force is required to level a Pi when held up by spacers. The next test is leveling the top Pi, and attaching a cable.
Now, that's pretty ideal. The CAT5 cable on the left is a few feet long, and hanging over the edge of the island. The HDMI cable will be heavier, but I already planned on adding some posts or other supports at the rear of the rack for the video cables. That will help with both the weight and the torque from the bend. And with the clamps on the top, this arrangement was very stable.
The work to grab some materials and stack the Raspberry Pis took less time than writing this post, but it provided a ton in reassurance. At this point, I'm going work on a portable rack that has the switch at the bottom, and 5 sets of pillars to stack the Pis on. I figure some M2.5 standoffs will work, though will take a little time to get to the bottom Pi. Some all thread with spacers (maybe not straws) will also do, and a piece of polycarbonate held down with butterfly nuts would help stabilize the racks.

And I'm sure all this work will be appreciated by the rest of the team.
Students will volunteer to play video games. Who knew?

No comments:

Post a Comment