The real game-changer to me was the eMMC slot. SD cards are just so pitifully slow that it's unbearable to ever do any kind of disk IO on the pi. Even running apt-get update took forever.
I switched the / (root) partition on the Pi to a USB pen drive. Only /boot is on the SD card. Not sure how it compares to eMMC but certainly faster than micro SD card.
I hope to get a card for the ODROID and run some of these tests again... Should've ordered it with my initial purchase so I don't have to spend another $7 on shipping!
Judging by the built-in eMMC on the Orange Pi, it's a substantial I/O boost, at least 4-8x faster than even the best microSD card.
Explain this to me as one hackernews reader to another: how come people are buying Allwinner stuff? Are you not aware of the repeated GPL violations or do you think undermining all of our work is not enough of a problem to warrant a boycott?
Extending this logic, we should also avoid anything from China or any country with an oppressive regime, which have repeatedly been violating human rights (which I think is more important that violation of a software license).
In fact, if we're talking ethics and politics now, there's also labor, abuse of workers and local people losing their jobs to cheap overseas workers issues.
In fact no, I was not aware of Allwinner GPL violations when I was buying it (which was about 2 years ago). If I knew about them, it might have affected my decision. I publish most of my software under GPL (check my blog and GitHub accounts), so I'm definitely not ambivalent to GPL violations.
Then again, I don't have time these days to thoroughly research ideological aspects of all the stuff I buy. I bought a CubieTruck, not a tray of Allwinner chips. I'm sure that if you looked up track records of all supliers involved in any hardware product these days, you would find plenty that violated GPL at some point.
I admire people that can say that they checked everything and that their laptops don't run any binary blobs and have no relations to known copyleft violators. I simply think my time is better spent in other pursuits.
For me, I bought one Allwinner board (Orange Pi Plus) just to see how the experience/software/etc. compared to the others... and it was a terrible experience.
So that mixed with the iffy licensing[1], I don't see a bright future for their chips/mainstream acceptance.
I bought a odroid-X2 with a eMMC chip 3 years ago and it is more than ok for a "simple" use (hosting my contacts, calendar and RSS for example). But for inserting in bulk 25000 (small) records a day in a Postgres DB it was really slow. When I had to reinitialize the DB from the raw data, it took so long (7 millions records) that I moved the DB to my desktop and let the downloading part on the odroid.
I read that faster eMMC chips were released, but I don't have any figure.
I had an XU3, and the eMMC pretty much justified the entire cost of the setup for me. Boots practically instantly, rw was insane, I had a crap connection so updates sucked, but like installing from tarballs was super quick.
It's a neat little device. I had a real-hard time getting Android working properly, but it was well worth the effort once it was.
I bought five of these to do some Erlang, Rust, and Pony-lang distributed systems programming and testing on. Lack of mainline kernel support is a bit annoying, but that's being fixed with Linux 4.6 (which is getting S905 support).
The only other issue I've run into is lack of RTC being a bit more trouble than I'd anticipated for some things. None of the stuff I'm building directly has any hard dependencies on linear time, because it wouldn't be much of a reliable or deterministic distributed system if it did ;-), but some underlying facilities that I depend on don't take very kindly to having their clocks reverted back in time on a regular basis.
Those minor foibles aside... these are exceptional SBC's and very, very competitively priced. I'd probably donate a kidney for a proper SATA port on them though. :-)
Not sure if this is helpful, but you can get older, (but oddly still very powerful) xeon servers on Ebay for under $200. That's what I use for prototyping distributed systems. The advantage is the hardware architecture is the same you would use in a production system. I think maybe a lot of companies that maintain data centers are flooding the used market? For $250, I was able to configure 64gb RAM Xeon servers that clock in a little over 1/4 of the CPU speed of very high end brand new servers.
...not that I don't love Raspberry Pi, I considered using them, but prefer something where I won't run into compatibility issues for prototyping (and they have SATA ports).
Oh, the use of small footprint, low-power hardware is completely intentional in this case. :-)
I used to have a band amp rack w/ 5 infiniband connected machines for testing existing distributed systems. Then I decided that they're all doing it wrong.
What made you come to that conclusion? Is there better performance vs. hardware cost vs electricity cost with the raspberry pi? I've often wondered if the cost/benefit ratios will tip in the favor of really cheap parts as people get better and better at building systems that horizontally scale.
Having five Xeon servers on your desk is not much fun when it comes to noise, but if you have some sort of server area yeah I agree you can get some good deals.
There's a ton of multi-node servers out there for dirt cheap. That way you only need one noisy server on your desk, or you can hide it away somewhere. I'm a fan of the c6100(ish) servers that have been getting offloaded on ebay lately:
Those are excellent, I think a way better deal than the price I got. The processors are 3/4 the power of the ones I configured (Xeon L5420 vs Xeon E5540) and have 24gb RAM per node for under $100 each. Its really shocking you can get machines that powerful for that little, they even come with power supplies. With the dual CPU, they are more powerful than a bunch of the i7's out there.
How did you find out about them? Just searching Ebay or is their a good resource to learn about these things? For the ones I got, I just stumbled upon them on Ebay.
I think most server machines are probably pretty loud. They're designed to go in data centers where noise is not a factor. They put a lot of components in a somewhat small space, then they put passive heatsinks on the CPUs and blow air through the whole case, including the passive heatsinks. The fans are really loud because they are both small and powerful.
If you wanted, you could take the top off the case and then put bigger, quieter fans in, or perhaps put larger, quieter active desktop heatsinks on just the CPUs. I think this would be okay, I don't think the rest of the motherboards usually require the fans, but I could be wrong.
Haha, yeah, these are in their own room. I can hook a monitor up to them if I need to, but I mostly just SSH into them from my office. The room is very loud and somewhat hot. Another drawback of having a cluster this size (15 machines) is the cost of electricity.
The ones I got have their own power supplies, I don't have rails, so I was pretty careful about this.
I'm not totally sure about this, but I think even ones with rails, you can often take the adapter card off the motherboard that connects them to the rails and put in your own power supply. In practice, it would probably be way easier to buy something thats already configured to have a power supply instead of use rails for power, there are plenty out there.
He's going to have to revisit this when the Pine A64 ships. Also if you're willing to step up to the $99 price level, you should check out the Geekbox. RK3368 SOC, 8-core Cortex-A53 at 1.5GHz, 2GB RAM. http://www.geekbox.tv/
I've been porting some stuff to it lately, along with a Ugoos UT4 (same chip) and my old Raspberry Pi.
I had the N3700 version of that board, and as a base for building a Windows 10 machine, it was very nice for the price. But Linux support for the onboard video was terrible, so I ultimately gave it to a friend who needed a Win10 media center PC. Once Intel starts officially supporting the Braswell/CherryView GPU in Linux (and it might by now; I got rid of it before the 4.4 kernel was released which supposedly supported it), it will make for an excellent, quiet Linux workstation or special purpose board.
Mainly what I want to do is use ARM64 and abandon Intel, so I don't look at options like that.
It's pretty clear that the x86 ISA has retarded the state of the art in computing for the past couple decades. The byzantine encodings make it mathematically impossible to write an optimal compiler for today's x86 instruction set.
Throw away all that cruft, use a clean instruction set, and compilers can go back to being small and fast, easily generating output that is also small and fast.
Thanks for linking the A1100 board. I was searching for one of those but couldn't find one. It's always a bit disappointing when these small companies release complicated boards like this, though, the price is never competitive with more mass market stuff. I could get an Intel desktop CPU and motherboard for $150, though I guess that's missing the point.
There are a lot of differences between Odroid/Dragonboard and the AMD A1100-based Cello. The former boards are essentially Android phone/tablet chips with the minimal amount of support circuitry to put them on a development board, and the result is of course very cheap, owing to the sheer volume of Android chips being sold.
However boards like the AMD Cello, the Gigabyte MP30-AR0, the Huskyboard, have server chips in them, external DIMMs (the Gigabyte takes up to 128GB of RAM), real SATA, PCIe slots, multiple ethernet (Gigabyte has 5 x ethernet, 2 running at 10Gbps), IPMI and so on. They also conform to the SBSA/SBBR standard so you can boot RHEL and (in the near future) Windows on them.
The cost of this is significant - a fully equipped AMD Cello (with case, RAM, SDD, etc) is going to be US$600. A fully equipped Gigabyte w/32 GB of RAM and an SDD will set you back US$1000+, but you're getting a real server for that money.
That looks pretty good too, was wondering how X-Gene fares.
In the meantime, there's still quite a gap between cheap phone SOCs and server boards. Nothing really in the middle, desktop/laptop space - 2 DIMM slots and a modest set of SATA/PCIe ports.
The X-gene 1 is a 3 year old design in 40nm [1]. It's not blazingly fast, but it's a reliable workhorse that boots the upstream kernel out of the box. The AMD A1100 is much newer, with the excellent superscalar Cortex-A57 core (but only 4 of them).
I believe that's the space that the Huskyboard and Cello are meant to occupy, although you may well think the price -- $300 just for the board -- is not exactly in that gap, and I'd agree.
I have the Cello on order, and will blog about it once I receive it, expected in a month or two.
Was reading the dmesg listings on your blog. Seems that X-gene 1 doesn't have AES instructions, is that correct?
I'm in the midst of optimizing the CryptoNight hash algorithm for ARMv8. Fortunately the Cortex-A53 in the RK3368 has AES instructions otherwise it would be pretty dismal.
I bought an ODROID-C1 about a year ago. I was very frustrated that it wasn't supported in mainline Linux kernels - only a vendor kernel that was fairly far behind, and didn't support what I had intended to use it for. I'm not sure what the situation is now with that board or Hardkernel's newer boards.
I purchased an ODROID a couple years ago and got nowhere with it due to a lack of support. They had like one developer and over-committed and under-delivered. I'd never buy one again.
I've been running an ODROID-U2 for three years[1] now, and can't say I've had any real problems - still running Ubuntu 14.04 wonderfully. What was the model you got?
The one that stands out is the OpenCV library that never materialized. Another was video drivers. Best approach is to be your own judge and go look at their support forum.
The Minnowboard Max's have a SATA port. I have two of those little guys running as faux-HSM's. They're also excellent SBC's as long as you're willing to cross over the ~$100 mark.
I would love to hear more about this. I've been considering a similar use case for a while and haven't found anything really comparable to what is available commercially.
Gigabyte MP30-AR0. However, a fully specced system with case, 32GB RAM, SDD and so on will set you back US$1000+. It's a nice system however, the first server of any variety I have had which has fully working, stable IPMI.
How come there aren't any Intel Atom based single board computers at a similar price point? These are basically phone or tablet class hardware, and if you go to any of the chinese stores, like Ali express or Banggood, there's plenty of cheap Atom tablets with Windows and Android dual boot. Wouldn't an x86 board be much easier to use with Linux and all sorts of drivers?
Or just buy an old laptop. I recently bought a Dell E6230 (3rd Gen Core i3) from eBay for $90. Fully functional laptop including RAM, hard drive, keyboard and LCD.
People often forget that the used laptop market exists. I use a Dell E6220 now as my main laptop because it accepts 16GB DDR3 and lasts 6+ hours on a 6 cell battery.
Sure, I would love to have a laptop with an HD or 4K screen, but for $100-200 I can buy the next previous generation each year and use the old one as a server for projects.
They consume ~7W idle with the LCD on. I'm sure that would drop to 3-4W with the screen off.
I used to have a MacBook (2011), but the thought of paying $1500-2000 for a new laptop where I can't even upgrade the memory, WiFi, or storage (easily) strikes me as insane.
Yes. I am not aware of any recent desktop computers that can idle at 3W and provide close to the same peak performance as a used laptop does. Obviously Intel has been making good progress on this, I have heard that Sky Lake chips can idle at <10W, but those are still quite expensive.
Also by buying a used laptop you get something which is already designed for low power use (e.g. 35W CPUs are pretty much the maximum) and has a built in UPS. Even if the battery is worn out, you're still likely to get 30-60 minutes of run time.
What do you use these for? Is there a way to add an extra NIC card? What models do you find work best for this?
Edit: This might be a really dumb question, but might it be possible to put a laptop CPU into a server motherboard? Not sure if the laptop i7's/i5's are LGA 2011 and if the motherboard architecture would be compatible? If this were the case you could use the server board dual NIC and out of band management.
VM hosts mostly. I bought a bunch of 8GB DDR3 SODIMMs for cheap.
> Is there a way to add an extra NIC card?
You can get ExpressCard gigabit NICs for a reasonable sum. I have also seen dual gigabit mini PCIe cards available for around $50.
Me personally, I just use a managed switch which supports VLANs. None of the VMs I run are really network heavy (except when booting from a Zyxel NAS I turned into an iSCSI SAN), so having them share a 1GBit link isn't an issue. VLANs ensure appropriate separation.
They're also great to replace the wireless card if you want to make a professional grade WiFi AP. You can buy 802.11ac cards for around $80 which work with Linux. So you end up with something far better than the ARM/MIPS they sell on Amazon for the same price.
> What models do you find work best for this?
Any Intel NIC is usually very reliable. I also haven't had any problems with RealTek cards.
> but might it be possible to put a laptop CPU into a server motherboard?
I believe this was possible with Mobile Pentium 4 chips. You could put them in socket 478 with an adapter.
Nowadays though it's not possible. The architectures between desktop and mobile are too different (e.g. QPI speed, # of memory channels)
> Not sure if the laptop i7's/i5's are LGA 2011 and if the motherboard architecture would be compatible?
They're not. The Dell E6220/6230 use a BGA mounted CPU, so it can't be replaced.
LGA2011 CPUs are special beasts. I was considering to buy one earlier this year because they're so cheap (compared to present day Xeons), but then you basically have to buy an eATX motherboard, server grade PSU, etc.
You can just now buy an LGA2011-3 mini ITX board, but it's really not worth it. LGA2011 CPUs are designed for multi-socket severs.
> If this were the case you could use the server board dual NIC and out of band management
As per above, you can't do this. OOB management takes power too, and I doubt you could find a server board with these features that uses under 20W of power itself.
These laptops do have Intel ME though. I think some kind of OOB management is possible. I haven't tried myself though.
Thanks for posting this. This will definitely help a huge amount with the project I am working on (EnterpriseJazz.com)
What models of laptops do you looks for. I recently bought an employee a used Lenovo T410. Is that a decent model, or are there other models of laptop that work better?
That's entirely true. But this article is about benchmarking the ODROID-C2 in a variety of situations, such as networking and storage, not using the GPIO on it.
For an x86 alternative, used laptops provide much better value for the money than buying a new SBC with an Atom.
If you want to add GPIO to one of these, you can easily buy an Arduino knockoff or something with an STM32 and control the GPIO device via USB.
$159 isn't exactly a similar price point, and it's not designed to be used as a headless server, like a simple NAS. And how would you use any GPIO for sensors?
There are tablets on Banggood that costs about half of what the Compute stick costs, and that's with a battery and a touch display.
The Edison's a closer comparison in terms of target market. If you have source, porting to ARM isn't hard enough to make Intel boards serious competitors in this space. If you don't have source, you're more likely to need to use "Windows IoT" or whatever awful thing they're trying, rather than Linux.
Is there support for hardware video decoding on the ODROID? The Pi almost makes for a reasonable media center thanks to the hardware decoding, but I would like something with a little more oomph for the selection screen. This looks like it should be great for that, but I don't want something that's going to fall on its face when you try to decode video.
I've got a Pi Zero, Pi B+, Pi 2, and Pi 3, and the Pi 3 is the only one that has virtually zero lag on the "selection screen" for Kodi and OpenElec. The Pi 2's lag is barely noticeable, but the BCM2835 in the B+ and Zero does lag significantly (though playback is flawless on all of them).
That said, none of the Pis come close to a commercial set top box like the Roku 3 or Nvidia Shield TV, both of which are 60fps and buttery smooth.
I would like to use the ODROID C2 as a media player. The video and network capabilities are looking quite promising. I can't find much about the supported audio modes. Does anyone know if audio passthrough via HDMI is supported? Does the platform even need to support it or is it just a software thing and Kodi can do it anyway?
Any Hardkernel folks here ? I want to know how much cost saving can be achieved for a barebone C3 with only 1G NIC & may be USB 3 , having this version will be good for making clusters.
Not exactly like the Pi's, and coming in with 5 Gig Ethernet ports is the Turris Omnia: https://omnia.turris.cz/en/. It is intended to be a router, and not really a Pi clone though. However, it is (almost) completely open. You can order the board only for $119, but that option will disappear soon if I got it right.
At the same time, we will discontinue the "Board only"
perk. The demand for this version was very low and it
presents a complication for handling and logistics.
Just to be clear, it is the board-only option that is being discontinued, not the router+case! The case looks pretty cool to me.
Most of the devices with more that one (especially >2) Ethernet port actually have only one network controller and a small VLAN-capable switch. That's the standard configuration of almost any plastic access point/"router".
Just get yourself a cheap VLAN capable desktop switch, and you will be able to configure as many logically segregated networks as you wish - using any computer with a single network card.
Of course the total bandwidth will be limited, but the CPU might be the bottleneck for a typical ARM anyway.
Yeah, it's telling that true (some have only 2 controllers, and there's probably single controller ones too) quad port NICs usually go for $70+ used, and in the hundreds for a new one. On the bright side those usually have support for some more advanced stuff like TOE.
I've owned a XU4 for over a year now. It's been a great piece of kit (once I disabled the fan that is). For me the biggest advantage over the Pi is the extra memory. Especially if you plan to develop any sort of Java services.