iPerf Comparison: Raspberry Pi3 B+, NanoPi, Up-Board & Odroid C2

The term Single Board Computer (SBC) became popular with the release of the Raspberry Pi (RPi) platform. The success of the RPi brought along many other SBCs in the market; at this point, I have come across two dozens of SBCs that are very similar in specifications and cost to the Raspberry Pi.

I have reviewed a few of them already over the last couple of years and, in most cases, the focus was on bandwidth-networking performance by using iPerf. Although it’s impossible to test every single SBC that comes into the market, recently there have been a few devices that have caught my attention. They are as follows:

Raspberry Pi 3 B

This model has been on the market for 2 years now and was the standard RPi board before the release of the RPi 3 B+ last month. When it was released in February 2016, it caused the most excitement because it included on-board 802.11n 2.4 GHz WiFi and Bluetooth.

Raspberry Pi 3 B+

In March 2018, the Raspberry Pi Foundation announced the release of the RPi 3 B+ which, from a networking perspective, has two major upgrades:

  1. Gigabit wired interface
  2. 802.11ac dual-band on-board WiFi

The Gigabit interface comes with a caveat since it’s routed through the USB controller and this limits its maximum bandwidth performance, as we’ll see later on.

NanoPi NEO2

This is an impressive SBC because it packs as much CPU power and memory as the RPi but at half the cost and size. However, it lacks any wireless connectivity. This can be fixed with an external WiFi dongle and at that point the cost comes at par with the RPi.

Odroid C2

The Odroid family of SBCs has been around for several years, and from the beginning, their main differentiator with the RPi family was their higher specs in terms of CPU and memory and Gigabit interface. They don’t include on-board WiFi and they are around 10% more expensive than the RPi.

Up-Board

This caught my attention because it’s the only SBC based on an Intel processor. It packs a 1.92GHz Atom processor and up to 4 GBytes of memory, as well as a 10/100/1000 interface. It has the same dimensions with the RPi but it doesn’t come with any on-board WiFi connectivity. In addition, it’s price is more than double than the RPi.

Here is a table that summarizes the main specifications of these four boards; I added the RPi 3 B Board as a reference:

RPi 3 B RPi 3 B+ NanoPi NEO2 Odroid C2 Up-Board 2GB
CPU 4-core 64-bit Cortex A53 @ 1.2GHz 4-core 64-bit Cortex A53 @1.4GHz 4-core 64-bit Cortex A53 @1.5GHz 4-core 64-bit Cortex A53 @1.5GHz Intel Atom x5 Z8350 64 bit @1.92GHz
Memory 1 GByte 1 GByte 1 GByte 2 GByte 2 GByte
Wired 10/100 10/100/1000 10/100/1000 10/100/1000 10/100/1000
WiFi 802.11n (2.4 GHz) 802.11ac N/A N/A N/A
Dimensions 85.60×56.5 85.60×56.5mm 40×40 mm 86×56 mm 86.5×56.5 mm
Price $35 $35 $20 $46 $99

The bandwidth performance of all these devices depends on two factors; their physical interface specifications and the CPU ability to handle the traffic. To measure their bandwidth performance, I used iPerf Version 2. The results were similar to iPerf Version 3.

Over the years, I have seen several boards that have asymmetric bandwidth performance as source and destination of traffic (server and client in iPerf lingo). In the table below, the source column corresponds to the iPerf client (iPerf -c) and destination to the iPerf server (iPerf -s). The boards were tested against the same Linux host and were connected to the same gigabit switch.

The five SBCs are sorted in terms of overall performance as follows:

As you can see the Up-Board and the Odroid C2 achieve similar bandwidth performance, that almost reaches the limits of the gigabit interface at around 940 Mbps. The other important characteristic is that these two boards have symmetric performance when they act as a source and destination of traffic.

The NanoPi NEO2 ranks third because although it performs the same as the Up-Board and Odroid, when it’s the source of the traffic, it has lower performance when it is the destination of the traffic. I am not sure why the NanoPi does not have symmetric performance, but I’d assume it has to do with some hardware issue.

In fourth place is the RPi 3 B+, but this is expected since the manufacturers have detailed that the maximum bandwidth performance expected would be around 300 Mbps. Here we see that it gets up to 328 Mbps as the destination of traffic, and only up to 234 Mbps as the source. Again, I assume this asymmetry has to do with hardware limitations of the board.

Finally, the RPi 3 B has a 10/100 interface, and it manages to saturate the interface at 95 Mbps, as expected.

If you search online you will find at least a dozen other SBCs with similar specifications, performance, and pricing to the ones listed here. In this post, I focused on bandwidth performance mainly because we use the RPi and the Up-Board in our product as a network performance monitoring agent. There are a number of other parameters like price, availability, availability, support, and long-term support, that you should consider when you decide which board to use.

In a future post, I will discuss the WiFi performance of the newly introduced on-board 802.11ac of the RPI 3 B+.