ODROID-N2 Review

I recently received an ODROID-N2 SBC from Hardkernel, which is a new board replacing the previous ODROID-N1, which was cancelled. I purchased the ODROID-N2 board, power supply, a clear case, WiFi USB adapter and a 32GB eMMC card, since the eMMC is much faster than SD cards.

Figure 01 - The ODROID-N2

Figure 02

The nice thing about the ODROID-N2 is that is uses a different SOC, an Amlogic S922X, giving a new perspective compared to most RK3399 top-end boards we see these days.

Some board specs:

  • Hexa-core Amlogic S922X CPU with quad ARM Cortex-A73 and dual Cortex-A53 cores
  • 4GB DDR4 RAM
  • 1Gbps Ethernet
  • 4 USB 3.0 ports (USB 3.0 hub behind a single USB 3.0 port from the SOC)

More details about the specifications can be found at https://www.hardkernel.com/shop/odroid-n2-with-4gbyte-ram/. My tests are always focused on server and console workloads. There are lots of benchmarks on Youtube and other blogs running games on either the Android or Linux desktops.

Now with the latest features from Docker, where you can build ARM images as easy as for x86 (as I wrote here https://bit.ly/321J80b), there are almost no drawbacks to use an ARM SBC for your server needs. I hope Hardkernel and Amlogic send the patches upstream to support this board. You will need to use Hardkernel’s own Kernel tree at https://github.com/hardkernel/linux. More details on their wiki at https://wiki.odroid.com/odroid-n2/odroid-n2.

First thing I did was installing DietPi, a lightweight Linux distribution based on Debian. They already have an image for the ODROID-N2. I just downloaded, unpacked the file, and flashed it to the eMMC memory using Balena Etcher (https://www.balena.io/etcher/). Remember to order the ODROID eMMC-USB reader (https://bit.ly/2ZjxC2L)--it will make your life easy.

CPU/Memory Benchmark

First, I compared synthetic benchmarks (DietPi benchmark and 7zip). These tests give a brief overview of the performance of the ODROID-N2 and an RK3399-equipped SBC..

ODROID-N2–4GB

[ Fig. 03 ]
 

[ Fig. 04 ]

Firefly RK3399–4GB

[ Fig. 05 ]
 

[ Fig. 06 ]
On average, the ODROID-N2 is 30–35% faster than Firefly RK3399, my default board. Also it has way better memory throughput, up to 40% faster. I also benchmarked other RK3399 boards in the past and they all score close to the Firefly numbers.

Java Benchmarks

Next, I ran some Java benchmarks aligned with my previous post comparing results on SPECjvm2008. On those tests, I ran them on the Firefly RK3399, as well, so the results will be aligned with the other benchmarks shown here.

The benchmarks were run in a Docker container with the parameters:

$ docker run -it --rm -v $(pwd):/test openjdk:8u181-jdk-stretch bash \
     Java -jar SPECjvm2008.jar -wt 30s -it 1m -bt 6 -i 3 -ikv -ict \ 
     [benchmark]
[ Fig. 07 ]
Here are the Core speeds and a temperature measurement during the benchmarks (100% on all cores)

[ Fig. 08 ]
 

[ Fig. 09 ]
 

[ Fig. 10 ]
As can be seen, the performance increases around 30% persists compared to RK3399.

Network

I then tested the network using iperf3. I test both TX and RX using the 1Gbps Ethernet connected to the same switch as the other computer. For a server, I used my Macbook Pro connected with a 1Gbps Ethernet adapter. Figure 11 shows the results from the ODROID-N2:

[ Fig. 11 ]
Reverse traffic mode gets lower numbers, but I saw similar results while testing the RK3399 board.

[ Fig. 12 ]
I tried disabling network checksum offload (a known issue on Rockchip SOCs) but the performance results were the same.

Conclusion

The board has a huge potential and is the most powerful ARM SBC I have ever seen. It suits many use cases, ranging from a home/mini server to a full-featured media center or desktop computer running almost any workload either installed or in containers. It is fantastically suited for a Kubernetes cluster with multiple nodes. Also it's power consumption is amazing and can be always ON with only 2.8W while idle and 6.5W while benchmarking with all 6 cores at 100%.

Figure 13 - Consumption while on 100%

It is easy to flash new images (using eMMC) and connectivity is plenty for most use cases. I would love to see a PCI-E slot or an M.2. connector for NVME drives. Actually I found a document that states that the S922XSOC contains a 1 lane PCI-E that, in the ODROID-N2 case, was used for the USB 3.0 port. Other companies could provide this PCI-E lane as a M.2 connector or PCI-E slot.

All in all, I highly recommend the board and place it on top of my list with it’s features and within a reasonable price point for its performance and features. Also, in the near future, I think I might transform it into an ARM64 desktop with a full-featured Linux distribution like Ubuntu or Fedora, if I can port it.

References

https://bit.ly/2ziyPbX https://github.com/MichaIng/DietPi/issues/2028

Be the first to comment

Leave a Reply