Jump to content

There's always room for Pi.


cooper

Recommended Posts

I'm waiting for the german distributor to add a listing for these devices but from where I'm sitting, these new boards look mighty appealing.

Because of where the connectors are, I can't use the concept of 2 on a single sled anymore, but what if I make sleds for a single board, thin side forward and mount them vertically (network connector at the top) in a row? Assuming the height is still about 20 mills the sled construction I'm considering would make that about 25 mills times 15 (with this setup it makes sense to fill up the switch) makes 37.5cm wide. The boards are 85 millis deep mounted like this so the sled would be about 10 cm deep. I don't have room to mount the ring to pull trays out with, so my plan here is to have the surrounding bits around this tray of sleds lie about a centimeter deeper so in a sense the sleds protrude a bit, allwing you to grab one from the sides and just pull it out like that.

Next problem is the power plug, which is on the side. I want it to be as compact as possible, so having a big-ass plug sticking out the side won't work. I'm thinking I should just solder some wires onto the outside of the board's power connector. It's all the way at the back of the board, so guiding the cables from there should be a breeze.

I've also been reconsidering how the boards are going to connect to the power strip. Before I simply assumed it would use the flex in the tray's plexi. I would have two plastic parts with the smooth part of a rivet touching the smooth part of another rivet on the other piece. One would slide over the other, snap back a bit (but not fully) and thus be held in place. Sounded sensible, but the more I think about it the more fragile this seems as well as rather dependant on some fairly precise part placement which worries me a bit. What I'm now thinking to do instead is to have two ballpoint springs mounted on the sled for the +5V and ground connection which stick out a little beyond the end of the board. I would have a bit of raised plastic in the center which houses a neodymium magnet that I've still got a number of doing nothing right now with a matching magnet on the other side. Those magnets should have sufficient pull to keep the sleds in place and the power connected.

Due to the lower power draw I'm going to assume for now that I don't need active cooling anymore. They're claiming a typical power draw of 0.5A which if true should be managable just by allowing convection to do its thing. I'll just keep an eye on that once I've built this beast.

Back to dimensions and more specifically, the depth of this thing. The deepest component is either the switch or that industrial 5V power supply which both come in at about 11cm. With the switch-over in my fileserver a small SSD has become available which will suit this project's 5V power situation quite nicely. I'll have to check if the thing's fast enough though as at the time that wasn't a requirement. Might just buy a new one. These devices are smaller too, so I might be able to get away with having both the harddisk and whatever board I will pick to serve the cluster mounted right next to the power supply now that I've got a bit more width to play with. Final external dimensions would go from about 326x212x200 to 411x206x110 which is a third off in total volume. Nice!

Finally timeline. I should have the funds to get all the components I want for this somewhere in july. I'll probably buy a single C1 before that, once the german distributor actually has them in stock so I can verify they do what I want them to and make a mock-up of one of those sleds so I can make sure I have the measurements right.

Link to comment
Share on other sites

  • 4 weeks later...
  • Replies 107
  • Created
  • Last Reply

Top Posters In This Topic

They're not yet in stock, but the german EU distributor has the Odroid-C1 listed at 44 euro.

Getting 15 of them will set me back 660 euro which is still considerably less than the original amount I envisaged when using U3s (over 21% less or 180 euro). I'll probably order 1 at the end of the month to see how much I like 'em and to exactly measure everything. Maybe even try to construct a sled or two since working with plexi didn't go as well as expected when I was working on my Cheap Low-power File Server and I should know what I'm getting myself into.

Link to comment
Share on other sites

  • 3 weeks later...

Just ordered my first C1.

Shipping adds another 8 euro but other than that no surprises. They still don't have any stock so I'm going to have to wait a while anyways.

Something I didn't expect to see is that these C1's actually have gigabit network. Their own product page shows an iperf test that has this C1 being able to spit out about 600MBit/s to the network which is a nice step up from the 100MBit/s of the U3 and very useful given my interest in using this for clustering things. The only thing that worries me is that it didn't get closer to the theoretical maximum of 1000MBit/s. The 100MBit devices can reach 99% of that whereas this thing apparently chokes at just 60%. Can't tell if that's because the MAC can't handle any more or if they simply used a shitty test. Then again, if you're making a device and want benchmark results to show its superiority, wouldn't you want these benchmarks to show the absolute best the device can achieve?

I'm still looking for a decent device that can serve as a file server for this, which would preferably be an ARM device, operate off of 5v and have 2 GBit ethernet ports and 1 SATA port, or a matching USB3 port for each with the ability to actually keep up with it. An example of a device that can't would be the PogoPlug v4 which has all the required features but even after tuning I find the reported performance numbers for the device lacking. Kinda makes sense when you have an 800 MHz ARM5 CPU to push the data around, but it makes you wonder why they bothered with the high-end connections in the first place. The device also operates off of 12v which should've been addressed aswell if I were to go with this.

For now, I guess I'm still looking for that perfect machine. Suggestions are very welcome.

Edited by Cooper
Link to comment
Share on other sites

Interesting concept. The 3-port, 7 watt EdgeRouter Lite can run Gentoo. It's got 3 GBit ethernet ports, a somewhat potent dual-core 500MHz MIPS64 processor and USB-based storage. 512MB RAM...
Main problems for me wrt this project is that it runs off of 12V, only does USB storage, at 100 euro new isn't really very cheap and I can't find anything on how well (or not) it performs as a generic Linux server. Those hardware features to speed up network processing are nice, but do I lose that once I install my own OS? Are they required to even get decent performance? I've seen a review from some guy that claimed the device began to falter once throughput reached 50 MB/s and eventually outright died. I'm assuming his device was simply faulty, but still...

So I kept searching and ran across this thing which seems a little more full-featured but I can't find the power draw. It operates off of 5V, price range is on the high side all things considered. Tons of USB ports though nothing very high-speed to attach storage to. It also slightly worries me that it reads on the hardware page "2 port switch" for EMAC... So it...doesn't have 2 ethernet adapters...? Size of the board looks decent. If it had SATA it would've been the one.

Choices, choices...

Edited by Cooper
Link to comment
Share on other sites

Goodies in the mail today:

c1_in_box_zps085778c1.jpg

Yes, that little white box in the top-right corner was all I was hoping to get. The rest contained only filler and that catalog. Given the fact that a lot of the stuff this shop sells is of similar size, one has to wonder why they choose to use such enormous boxes.

Anyways, let's see what this puppy looks like, shall we?

c1_side_zpsb1459d40.jpg

c1_angle_zps8d7e3aa5.jpg

Ooooh. Sexy.

Relative to a PcDuino3 Nano it's roughly as wide but slightly shorter. The main difference between the two aside from that is that the Nano is a dual core whereas the C1 is a quad, the Nano has a SATA connector, the C1 has 4 USB 2.0 ports where the Nano has 2 and Nano uses a regular HDMI port whereas the C1 has a Micro HDMI. And of course the fact that the C1 has a power plug whereas the Nano uses MicroUSB for that.

What you can't see in these photos is that on the bottom there's an eMMC connector as well as a MicroSD slot which extends quite substantially below the board, making it unstable when resting on a flat surface. Everything else that extends below the board, which is mostly the underside of pin headers and such, are at roughly the same distance from the board so when I make a sled for this thing I will at the very least need to make a hole directly under the board to make room for this slot. Thankfully its excess is roughly 1mm and I don't think you can buy anything that would work well as sled casing material that's less than 1mm thick.

Looking closely at the power plug slot my expectation was right: I can solder leads onto the inner pin where it exits this slot at the end and the whole of the metal outer casing of this slot is the ground so that's really easy to solder to. No need for a big power plug sticking out on the side. Yay!

Link to comment
Share on other sites

If you want something like that for big performance, go with their Intense PC2 or something like an Intel NUC.
I don't know how their price or performance but because of AMD's, and I'm sorry to say this, SHIT cpu performance using such a machine as you referenced for anything other than medium-quality or less gaming and maybe viewing a movie or two is beyond its grab.
On the other side of the table you have Intel with, and I'm happy to say this, SHIT gpu performance meaning that it's only suited for watching movies without demanding codecs and anything that doesn't involve playing even medium-quality games.
Zotac has a ZBox ID45 which pairs an Intel CPU with an Nvidia card to make something in a very small container perform admirably. Unfortunately the best you can get here CPU-wise is an dual 1.9GHz i3 which would probably still knock the socks off the competition. Note that if you take one of these, buy the non-plus one. The plus one adds an underperforming SATA harddisk and with something like this you really, really want an SSD.

The overall point is that if you want a computer in a very tight space, you're going to have to be very clear about what you want that machine to do. My manager recently asked if he should get a Pi to act as an HTPC. After talking to him for a while, it became clear that he basically wanted it to be an all-around PC but hiding a laptop behind his TV didn't appeal to him. My manager explicitly named a number of Windows-only programs that he demanded would run on it, so immediately ARM was out (and why he thought he'd be able to run that off a Pi is beyond me). After that it was finding a small enough package with enough oomph to give him what he needed, so I recommended a NUC.

Once you know what you're going to run, you know what concessions you can make and most importantly which ones you can't.

Link to comment
Share on other sites

Last time I discussed making a sled for this board I assumed I would be able to fit the thing in a 25mm space. Now that I have one I can say that the thing itself is already 21mm high so that doesn't leave a lot of wiggle room.

Let's say I'm using the plexi I've been using so far for my other platform. That stuff is 2mm thick meaning I can have 1 sheet above, 1 below and I've got my 25mm. Problem is that I have to mount the board onto the sheet below which entails running a screw through it. Since screws have the nasty tendency of having a head attached to them of at least some size, I've got a problem. Also, for a crafting noob like myself, plexi is turning out to be a fairly cumbersome and unwieldy material.

So I had a look around at alternative materials. First I came across was MDF - compressed sawdust glued together again. Thinnest I could find was 2mm and that wasn't at my local DIY shop so fairly expensive. The thinnest the DIY shop had was 3mm with the added bonus that they'd cut it up for me, but 3mm is just too much. There were other types of plastic, obviously, and also down to 1mm thickness but they were still rather pricy and I didn't get the impression that it would be any less unwieldy as the current sheets of plexi that I already have.

It was already clear that heat buildup wouldn't pose _that_ much of a problem. The board would be somewhat elevated from its mounting board by at least 1mm by virtue of the various pin headers that stuck out under the board. I've also got sufficient heatsinks for the boards should I end up wanting to use that. Sure, those heatsinks are somewhat larger than the actual chip it's covering, but that shouldn't make it any less effective a tool to ward off heat.

What I've eventually decided to get was (drummroll please)... cardboard. That's right, the mainstay of school children and other crafty little critters with time on their hands. All I need to work the material are an exacto knife and a metal ruler.

I've found a webshop that sells 1mm thick A4 format sheets of cardboard. It says "700 grams" when describing the sheet but I think(/hope/trust) that's the weight of the full stack of 100 sheets. Still, 7 grams for a single sheet of A4 is quite a bit. There should at least be some sturdiness in that. Bonus though is that I can drill holes for the mounting screw shafts in one sheet, a larger hole in the sheet under that for the head of the screw, assuming that head is less than 1mm high otherwise I'd just grind it down a bit, and hey presto! That stack of cardboard would cost me 10 euro ex VAT and lucky for me, these guys operate out of the same city where I work at.

With 2 sheets under and only 1 sheet over (can't imagine why I'd need more) the total sled height is 24mm making the inside width of its housing 36cm which leaves ample room for the various other components.

Edited by Cooper
Link to comment
Share on other sites

Today marks the day that the new Raspberry Pi 2 is unveiled.

Comparing the Pi2 against the C1 you get:
Pi2 will end up being 5-10 euro cheaper.
Both have an ARMv7 CPU, but the one on the Pi2 runs at 800 MHz whereas the C1 runs at 1.5 GHz.
Pi2 has 10/100 ethernet while the C1 has gigabit.

The rest is pretty much on par from where I'm sitting. I'm sure the expansion ports/connectors/GPIO pins/whatever will differ which, to me, means absolutely nothing. For my purposes the C1 is still the better SBC.

Edit: Found this article which also mentions the Pi2's electricity hunger and they're saying that at full blast the Pi2's chip will use up sufficient power to get hot enough to potentially warrant a heatsink. Also the RS-Online page lists the chip as running at 800MHz while in this article they're claiming 900MHz with overclocking potentional atop that. All this doesn't change my conclusion, though.

Edit 2: Microsoft's Windows 10 Internet Of Things build will be made available for the Pi2. Now stricktly speaking, there's no reason why that same bit of software wouldn't run on a C1, but official support exists for the Pi2, for those who value that.

Edited by Cooper
Link to comment
Share on other sites

I've got 1 C1.

I plan to start working on the sled for this one sometime next week.

I'm still looking for the right board for a controlling node (1xfast storage, 2xgigabit network) thus far coming up empty and the financials won't let me buy the other 14 C1's I want until about june/juli.

Once I have 1 sled though I can work on duplicating that and then work on the housing of it all, with the small caveat that without knowing what board will become controlling node I can't make the outer housing since the dimensions are still slightly in flux (the height, specifically).

Edit: I'm actually considering, given the simple fact that it doesn't look like a good controlling node is going to pop up anytime soon, maybe I should use another C1 for it, have it use 1 SSD over USB and maybe just use a direct 100Mbit cross-cable to connect it directly to my gateway machine, both sides running off a USB-to-ethernet plug. It's already got one of them for talking to the internet... If I can't find something suitable before then, this'll be what I'll do.

Edit 2: Fascinating fact I just ran into. I never really stopped and wondered just how fast USB3.0 actually is. Turns out it's 5GB/s theoretically. Let's assume it's 4GB/s, that's still good enough for 2xGBit ethernet and plenty fast harddisk. So if I can find a sufficiently potent USB3.0 hub I can run all the connectivity I need in my master node off of just *1* USB3.0 port. That puts the Odroid-XU3-Lite right up to the top spot of genuinely suitable SBCs to use as master node. :smile:

Edited by Cooper
Link to comment
Share on other sites

  • 4 weeks later...

Getting slightly miffed with my complete and utter lack of skill as it pertains to constructing shit, beit from cardboard, plexi or whatever, really.

In the case of the cardboard I basically only manage to reliably glue my fingers together.

I need 15 near-identical holders for my boards. I see but 1 solution:

3D printer.

Now don't get me wrong, I find that prospect actually rather exciting. Takes a bit of an investment, so it'll be something for this summer, but I don't think there's another way to achieve what I want/need.

I'll spend the time between then and now working on the 3D model for a module and working out which 3D pinter I'm going to take. For now I'm thinking the Micro 3D at 350 bucks and with a maximum project size of over 10x10x7 it's well equipped to handle this little project and a number of others I'm considering (the FOB I have for my parking garage is held together using scotch tape to name one thing).

Link to comment
Share on other sites

The objective doesn't seem to be having the most power, if you wanted that you would shell out millions for an actual cluster. The objective at least in my mind is testing distributed code cheaply. That's what I would do if I had one.

Edited by overwraith
Link to comment
Share on other sites

That's exactly it. I don't want a petaflop monster as that would require a huge investment in both the hardware itself aswell as climate control, sheer space and an electricity bill to match. My goal is to have what amounts to a fairly large set of, well, PCs, really, that combine to act like a cluster. It doesn't have to appear to the outside world as a single machine and in fact I would prefer it not to. But I do want to see load distribution and scaling. I'm planning to end up with 60 general purpose cores at my disposal, spread across 15 separate nodes and I'm intending to run apache and nginx on there, aswell as postgres, jenkins and whatever else I can dream up.

Link to comment
Share on other sites

  • 3 weeks later...

The recent Linux kernel releases are showing considerable love to the ARM platform. Unfortunately the Odroid-C1 is provided with a vendor-provided kernel which they claim to keep up to date, but quite explicitly state they will not try to mainline anytime soon. So it's either their kernel, or don't run Linux off of it. That, well, sucks.

So I'm looking around once more and with the recent pleasant experience with the sunxi community an AllWinner CPU-based board would be particularly nice to have. I'm currently having a long, hard look at the Orange Pi Mini 2. The original Orange Pi had an AllWinner A20 much like my PcDuino3 Nano. This new Mini 2 version instead sports the new AllWinner H3 quadcore A7 running at 1.6 GHz which is actually more than what the C1 does, but on top of that I have more faith in this board (eventually) being able to run a mainline kernel.

It's worth noting that the only difference between the Orange Pi 2 and the Orange Pi Mini 2 is that the Mini doesn't have the wifi chip installed.

There's also the Orange Pi Plus which, on top of that wifi option, adds SATA and GigaBit where the others only have 100MBit.

What I'm contemplating is using 15 Orange Pi Mini 2's as compute nodes and a single Orange Pi Plus as controlling node. I would've preferred a better option for the second nic on the controlling node, but here I get either a wifi link (yech) or a USB adapter. Guess that's going to have to do. Size-wise things are similar with the C1, energy-wise things are similar with the C1. Price-wise these puppies are cheaper, at about 525 for everything including shipping. Once the tax man gets paid we're looking at about 630-650 euro. Since 15 C1's would set me back 660 and I'd still be out one controlling node, the Orange Pi's would be the cheaper route.

It would also appear as if the Orange Pi Mini 2 is slightly less high. The C1 has an annoyingly placed SD card adapter on its bottom which sits considerably lower than most. I think I can win 1mm here alone, which would allow the whole chassis to end up 1.5cm less wide.

It's a pity that the Orange Pi Mini 2, like the C1, has its power plug coming out the side so I'm going to have to solder the cables to the bottom of the board. I think I can manage that.

Like most things in technology, if you wait long enough something better is sure to come along... :smile:

Link to comment
Share on other sites

oh, more RAM. That is always useful. Didn't check the processor mhz, but that is probably better too. So what kind of applications do you plan on trying to implement on your cluster (code wise)? Have you given any thought to what kinds of libraries or frameworks you will be using? Which language? Tools?

Link to comment
Share on other sites

More RAM would help, but both boards (C1 vs OrangePi) have 1 GB which is why those other factors end up being the clincher.

In terms of code and such my main focus will be java development, but within the context of my own framework rather than something pre-built. The reason for that is that the pre-built ones decided on their solution to various problems based on their specific situation. My goal is to run into the same type of problems and work out if the solutions they chose to implement work for me aswell or if maybe some alternative would prove better. If some alternative isn't better, I want to understand why.

Which is also why doing this within the context of your own framework helps: full control. You could consider it bad API design, but sometimes the solution to problem A drives the solution to problem B which might be detrimental to the solution chosen for problem C, which was only uncovered years later and to change A and B just for C was deemed not worth it.

For me it all started when a very intelligent senior collegue of mine introduced me to his framework, which for the past year or 2 had been used for most development projects within the company. It's got a lot of good features, but the core component is an SPOF - it's impossible to scale by design. And for a rather big program we make for the healthcare world, where up to 2500 doctors are concurrently prodding the system, this has forced one customer to run the server part of this program on an HP SuperDome. While it's fun and all to be able to play with a machine with specs you'd give up your left testicle for to play at home with, wouldn't it be cheaper to just scale horizontally?

I've been writing my own frameworks for some time now, mostly to gain familiarity with new technology and this is nothing different from that. Except for the fact that it's got a hardware angle to it which previous projects didn't. :smile:

Link to comment
Share on other sites

  • 2 months later...

I'm not asleep at the wheel, in case people wondered. I'm still planning on getting my nodes come july/august but I still hadn't found what I'm looking for a board to serve as my main controlling node.

These past few days I've been dabbling with Twitter.

Yes, Twitter.

I still haven't decided if I like it or not (check me out if you must) but the interesting thing is that I decided to follow Travis Goodspeed who, as it turned out, just retweeted a message by someone who was setting up a stack of motherboards for a BIOS hacking session. I didn't recognise the board so I decided to google it. It turned out to be the MinnowBoard Max.

This awesome board just so happens to be an Atom-based platform with SATA, Gigabit ethernet and USB 3.0! The holy trinity!

My focus all this time had been on ARM boards because, well, they're totally awesome, cheap, go easy on the power consumption and they run off of 5v. Any Intel board I encountered always wanted either 12V or a variation of the full ATX power connector. This puppy runs its dual-code Atom off of 5V demanding only slightly more power than a typical ARM board. Yes, at $140 it's kinda pricey and yes, it's x86 and yes, both those facts suck ass and yes, I would definately have preferred to use an ARM board for this - but since no ARM board currently exists that provides all the features I demand in a package I can work with this pretty much hits the spot.

Edited by Cooper
Link to comment
Share on other sites

  • 1 month later...

About 1 month from now I intend to place the order for my nodes, so unless people have a better idea than the OrangePi 2 Mini I've found that's what I'll be getting.

Link to comment
Share on other sites

  • 1 month later...

Just placed the order:

15x Orange Pi 2 Mini

1x USB3.0 gigabit ethernet adapter

1x 200W 5v 40A high efficiency PSU

For the PSU I chose this one instead because of its higher efficiency and because it's considerably smaller than what I was looking at up until now. I'm going to have to see what the measurements of the various parts are when they get in but I may need to mount the MinnowBoard Max and the SSD vertically because the PSU is a tad longer than what I was looking at before. Hoping that won't be required, but we'll see.

Link to comment
Share on other sites

  • 2 weeks later...

MUAHAHAHAHAAAAA!

Boards_zpscapp26sp.jpg

A mock-up of it looks like this:

mock-up_4_zpslfv87bhy.png

In the image, 4 pixels = 1mm

I'm assuming that the tray the boards are in adds a total of 1mm to the height of a board, half above, half below. 1mm width on the sides since that needs to slide into something, meaning half a millimeter of tray attached to the board, half a millimeter attached to the chassis that houses the trays. I might add a millimetre on both sides, but for now this'll do.

With this design the chassis will measure 35.1x19.7x12cm and that 12 cm is because the switch is 11 cm deep and I need to attach a barrel plug to the rear of the device for power. Even a 90 degree plug is likely to add at least 5 mm.

To put that in perspective: Take 24 regular 8oz/33cl soda cans. Arrange them such that you have 4 rows of 6 cans. Put 2 rows on top of the 2 other rows so you have a grid of 2x2x6 cans. This cluster will be smaller than that.

Edited by Cooper
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...