RkBlog

Hardware, programming and astronomy tutorials and reviews.

Are cheap low power x86 CPUs an alternative to higher end makers ARM boards?

Can low power x86 boards compete with performance oriented ARM boards?

Single board computers with ARM chips are flooding hackers/makers market. More and more models are released but they are getting stuck in a state of limited I/O support and limited software and drivers support when compared to what current x86 Intel and AMD platforms can provide. So let us check if cheap low power x86 CPUs can perform similarly or better while solving problems of most ARM SoC by offering more interfaces and better hardware support.

Rules

There is no point in comparing a mini-ITX gaming PC or a gaming laptop with an ARM board or moreover a Raspberry Pi. I want to focus on low cost bracket where most performance ARM SBCs resides. Intel and AMD x86 boards I picked were selected according to the following rules:

Just note that this isn't a Raspberry Pi vs rest of the world benchmark or comparison. It's more like all the random more expensive ARM boards that try to target being a small desktop computer vs cheap x86 boards.

ARM based systems suffer from few problems. First of all - closed source and not upstreamed drivers. We have Mali GPU and to get 3D acceleration out of it we usually have to rely on SoC vendor support. But some WiFi chips also have problems with proper Linux support and can even work only on some Android system provided by the vendor. Also I/O support is limited, although it's improving. SATA support was rare while now it's available on few boards. USB3 is also showing up. In the end there are also some marketing/business model problems. There are more and more quite expensive boards that position them selves as powerful computers, Raspberry Pi killers from the media headlines, while missing the mark for consumer desktops and cheap makers boards for DIY projects. I would say it's bit to many boards on the hackers/makers market that just are while not providing unique and valuable features.

Current x86 platforms have no problem with supporting SATA III, PCIe, USB3, GigE or multiple display support at various resolutions. Integrated GPUs have full support of OpenGL and not only mobile OpenGL ES so their Linux desktop performance is quite good for what compute power they have - while also being supported by a mainline Kernel and MESA driver. They also support Windows 10 and software available for that operating system. And if needed we can add a dedicated GPU or multiple SATA drives for a storage server - whatever is needed it's likely doable.

The question is - will we find a good x86 boards at low prices or will those be only old or very limited Atom boards? Will they be able to compete with Odroida XU4 or Rock64Pro in performance and provide more I/O, more features?

In case of Raspberry Pi there is much more to that project than just a SBC and performance. There is a huge community and large knowledge base when it comes to playing with electronics and alike. Most of the maker/hacker SBC market is however different. There is a lot of mostly Chinese boards that don't really offer that much - they have often better performance, maybe bit more connectors but with a limited support.

There is one more thing to ARM boards - sometimes they are marketed as a mini PC or picked for devices that need better hardware - wherever from lack of knowledge or wanting some free promotion on the back of for example Raspberry Pi name. There was a crowdfunding for a NAS server based on Raspberry Pi 2 and a HDD over USB2 offering little data integrity and slow speeds (although it did upgrade to Banana Pi with SATA support), or astrophotography camera maker that offers USB3 cameras and makes a USB2 Raspberry based mini PC that can handle data on a microSD card - which will have to be a big one when a camera makes few hundred GB of data from one imaging night (and not supporting their older USB2 camera due to hardware/OS limitations). Users, makers are then thorn apart - they want more modern I/O, more features, more PC-alike performance while goals and design intent of boards and chips they use are totally different. Maybe it's time to clear up the marketing and hype a bit? Stop free advertisement with no peer-review?

So now let us check x86 competitors to see how they perform against well known ARM boards. Is ARM far behind or just some improvements are needed? Which boards are the best pick for given usage case?

Cheap x86 boards

Below you will find few new boards and some second hand that should be relatively easily available on ebay and similar sites.

Qotom Mini PC Pico ITX Z3735F

This motherboards is available from Aliexpress in few stores and is a desktop adaptation of a tablet CPU/board.

This is a very small board that has a small subset of interfaces. It is however equipped with everything it needs to run - it has RAM and storage and is preloaded with Windows 8.1/10 Pro that you can pick during boot. Seller states that there is no active license for that OS.

In case of Linux support - the board does not allow booting from other media than the built in eMMC. What should be possible is to use EFI extra options when shift+closing Windows to be able to select another EFI-compatible OS to boot (this is supported by major modern Linux distributions like Ubuntu).

This board would be a good pick for some embedded systems where the OS or everything soldered on would be a required feature. Do note however that it's just an average tablet level in terms of performance.

Qotom Mini PC Pico ITX Z3735F

Qotom Mini PC Pico ITX Z3735F

Qotom Z3735F bottom side

Qotom Z3735F bottom side

Qotom Z3735F thermal image

Qotom Z3735F thermal image

Piesia nano ITX N2806

Yet another Aliexpress motherboard that is available in at least few variants with different I/O. It's also available in ruggerized, industrial nettops.

This board is one of many similar boards that differ with IO. This model has four Ethernet ports while some other have a set of COM ports or a bunch of USB ports. Depending on the role of the device we can pick matching I/O. Having so many Ethernet ports it can work as a sort of a router or a custom server.

The CPU is quite weak, but the board has mSATA and mPCIe connectivity which may be handy for storage options. To use the SATA connector you will need a non-standard 2-pin power cable for it. Both Linux and Windows 10 run without problems.

Piesia N2806

Piesia N2806

Side of Piesia N2806

Side of Piesia N2806

Ethernet controllers

Ethernet controllers

CPU radiator

CPU radiator

Thermal image of the top of the motherboard

Thermal image of the top of the motherboard

Thermal image of the bottom of the motherboard

Thermal image of the bottom of the motherboard

No-name N3160 thin mini ITX motherboard

Last Aliexpress motherboard is a N3160 Thin mini-ITX board. This form factor imposes a limit on components height as well as doesn't use ATX power connector in favor of more standard power adapter socket on the I/O panel.

This board comes with some accessories - power and data SATA cables, power switch on a cable. Due to it form factor it fits in specialized thin ITX cases which allows for a very compact builds.

Similarly to the previous boards also this one is more oriented at custom solutions rather than end-user consumer PC. After adding some RAM and a storage you can install a Linux distribution or MS Windows.

USB3 ports are handy, and the board can work as a always-on mini PC or some sort of network/multimedia device.

N3160 motherboard

N3160 motherboard

Thermal image of N3160

Thermal image of N3160

MSI E350DM-E33

The MSI E350DM-E33 is an example of a motherboard equipped with one of old AMD CPUs - E-350, E-450, C60, C70, A4-5000 and alike. They aren't in retail shops any more but are still very popular on second hand market due to quantities at which those devices were made. The performance was low, but usually AMD was able to compete with old Intel Atoms. The benefit is that you can buy a laptop, full PC, an all-in-one, or a motherboard with such CPU at a very low price and adapt it to your project of choice.

It's not the best and latest technology, but I've seen used but functional laptops or all-in-ones for around 50 USD. That may be low enough to make a fun project with.

The board does have 6 SATA connectors but those are for SATA II and not SATA III so maximal write/read speed will be lower for fast SSD drive (but it will still work). PCIe slot allows you to connect additional controllers or even dedicated graphic card. For gaming the performance will be limited by the CPU.

MSI E350DM-E33

MSI E350DM-E33

Infrared image of MSI E350DM-E33

Infrared image of MSI E350DM-E33

Asrock J5005-ITX

The Asrock motherboard is equipped with the latest and greatest CPU Intel has from the Atom family - Pentium J5005. This board and CPU is quite new and the availability seems low, while prices are increasing. Maybe due to Intel fabs having throughput problems those chips have been moved back in production line. There are also nettops with this CPU which may be an alternative as well.

Key features of this board and CPU is the multimedia support for encoding and decoding various media formats, 10-bit HEVC support, 4K 60FPS support, up to 3 displays and more. This CPU is also available in some nettops like Gigabyte Brix or Intel NUC and some of them also have Display Port connector.

As the price on this motherboard is quite high and is getting close to cheaper Athlon, Ryzen and Intel i3/i5 CPU based systems you should ask yourself if you actually need fully fanless system or maybe a very quiet but better performing for the money system with large slow moving fans.

This motherboard would be great if you really need a fanless PC that performs reasonably well - wherever it's multimedia or day to day tasks. It can also work as a always-on PC, server and alike. There are also cheaper boards equipped with J5005 predecessor – J1900, which has lower but still reasonable performance (and some less multimedia support; very popular on the Chinese market).

Asrock J5005-ITX
Asrock J5005-ITX

Asrock J5005-ITX

Superposition benchmark 720p iGPU

Superposition benchmark 720p iGPU

Superposition benchmark 1080p GTX 1050 Ti

Superposition benchmark 1080p GTX 1050 Ti

The CPU is good enough to run modern games on medium or lower settings. It needs a dedicated GPU to do so. It can be a passively cooled GTX 1050 Ti KalmX to keep that noise level down. The GPU on it own should be enough for 1080p gaming on medium settings if not more. Just note that 10W CPU won't allow it to reach top performance. Second caveat is PCIe x1 3.0 - only x1 lane limits available bandwidth a lot so even using a very powerful GPU may not improve performance due to that. As the PCIe connector isn't open you will need a riser cable to connect a x16 GPU to that slot.

Thermal image of J5005-ITX

Thermal image of J5005-ITX

Passively cooled GTX 1050 Ti KalmX

Passively cooled GTX 1050 Ti KalmX

RX Vega 64

RX Vega 64

Fallout 76 on J5005 + GTX 1050 Ti

Alternative solutions

There are few other sources of cheap x86 boards that I didn't used in my comparison. On ebay and other sites with used equipment we may find some extra hardware that could be adapted into a custom project.

First group are laptop motherboards - from spare parts and from disassembled units. We may find motherboards with soldered CPU or CPU + GPU that could be used to create a custom laptop-alike device. Do note however that some laptops use multiple PCBs and the main board may not be enough - so check if the board has all the connectors, including power supply connector. Also do note that you will have to make a custom cooling solution for the CPU as well as figure out where is the power switch connector and so on - a lot of things to do, very little documentation available. Depending on laptop popularity a cheap replacement screens could also be available and if not you will have to use a VGA/HDMI connector which has to be present.

HP Envy 15-AS i7-6560U motherboard

HP Envy 15-AS i7-6560U motherboard

Second group are parts from pre-built PCs by integrator like Dell or HP that make highly customized PCs. Older generations of such hardware is later on sold by companies and parts may show up in larger quantities on the second hand market. Due to their specific nature those board may be cheap while having good components. The downside is that they may be very limited on what hardware they work with - even up to BIOS whitelist you can't change so be warned when buying.

I was planning to test a DAFT3L-Kelia A4-6210 motherboard that was used in Acer Aspire XC-105 and Packard Bell S2910 PCs but as of now I still didn't managed it to make it detect any SATA or USB storage device with an OS. It's either broken or expects some specific device. Those boards seems to be available in large quantities.

DAFT3L-Kelia A4-6210

DAFT3L-Kelia A4-6210

Third groups are nettops and their parts. Used nettops often end up on the second-hand market and offer a full set with dedicated case and power supply. New models offer newer components, better performance at a higher price. You may also find from time to time some parts from high-end models that are way cheaper than the full PC - but like with laptop motherboards there are no guarantees and a lot of things to solve. I've seen one HP ELITEDESK 705 G2 AMD A12-8800 powered motherboard at a fraction of the price but still - cooling, power adapter and stuff like that have to be solved.

HP ELITEDESK 705 G2 motherboard with AMD A12-8800

HP ELITEDESK 705 G2 motherboard with AMD A12-8800

SBC ARM boards

The main competitors are RockPro64 and Odroid XU4. I've added Raspberry Pi 3+ for comparison.

Raspberry Pi 3+

This is new quad core Raspberry Pi board offering way more performance over previous single core solutions while still keeping a low price.

Odroid XU4

Odroid is quite well known among makers community and is packed with a quite strong ARM SoC. One of Odroid variants of this SoC comes with a SATA port too.

RockPro64

This is a quite new board that packs a lot of RAM, a strong CPU and a new thing among cheap SBC with ARM SoCs - PCIe x4 connector. It can handle some NVMe adapters or PCIe controllers. Potentially it can handle Nvidia or AMD dGPU, but that's a story for a separate article. The CPU isn't as strong as Exynos5422 but still close.

ARM SoC boards

ARM SoC boards

Thermal image of Odroid XU4

Thermal image of Odroid XU4

Thermal image of Raspberry Pi

Thermal image of Raspberry Pi

Thermal image of Rock64Pro

Thermal image of Rock64Pro

Comparisons and benchmarks

I've managed to upload most of the Linux benchmarks to openbenchmarking.org (plus GLmark results), but on some boards the benchmark tool had problems generating end results. I'll try to fill in the gaps later on.

Kernel compilation time

Kernel compilation time

UserBenchmark CPU score

UserBenchmark CPU score

RAW file conversion to PPM

RAW file conversion to PPM

Floating point operations performance

Floating point operations performance

Above benchmarks test mostly CPU performance. Kernel compilation can take advantage of multiple cores. In more extreme cases it can be affected by storage performance - I had issues with one of GoodRAM microSD cards which gave very bad results in this and SQLite benchmarks. Using a SanDisk card solved the problem.

Most expensive Pentium J5005 is also most powerful, usually getting more than twice the better score than the competition... and the competition aren't x86 CPUs but ARM ones - Exynos5422 and RK3399. Other low power Intel CPUs don't look that good in terms of raw performance, they can just offer more I/O support.

RSA 4096-bit OpenSSL benchmark

RSA 4096-bit OpenSSL benchmark

Crypto benchmarks often benefit heavily from specific CPU instructions implemented to optimize such workloads. Both Intel CPUs implement AES-NI instruction set but only J5005 has the performance needed to get a good score. ARM SoCs aren't far behind.

Data insertion time into SQLite database

Data insertion time into SQLite database

This benchmark focuses mostly on storage performance but CPU is used a bit as well. Large performance disparities can be attributed to write barrier performance (where the application forces data to be saved on the driver rather than just stashed in the temporary cache for writing down). Also random I/O performance may affect this - which may be an issue for some SD card. N3160 CPU while having low compute capabilities it can get a good score in this benchmark.

It's worth noting that even SSDs in your brand new laptop running Linux may have varying write barrier performance and if you see slower boot times than expected - check the performance of this feature.

If you want to run a server or other PC with data integrity in mind it would be good to pick a soldered eMMC or even better - SATA/mSATA/M.2. drives via native controllers and not simplified USB chipset-adapters.

OpenGL QGears2

OpenGL QGears2

OpenGL GLmark2 800 x 600

OpenGL GLmark2 800 x 600

Testing OpenGL performance on ARM is hard as those chips implement mobile OpenGL ES variant and usually OpenGL desktop benchmarks fail to work properly on them. QGears2 also had some compilation problems on some SoCs.

Raspberry Pi 3 barely run the GLmark2 and had a lot of artifacts, RockPro64 had a better frame rate while still showing some artifacts. Odroid XU4 managed to run it. Overall benchmarks for GPUs used by those SoC do line up with those results - Exynos5422 has the most powerful GPU among those boards.

N3160 benefits from full OpenGL implementation and achieves better results than for pure CPU compute benchmarks.

Mali drivers aren't OpenSource nor the code is upstreamed to the Kernel itself so we have to rely on third party to provide compatible Kernels (and likely some MESA drivers) to get any 3D acceleration on Linux desktop. Also mobile SoCs implement mobile OpenGL ES rather than desktop oriented OpenGL. It will rather take Vulkan both on mobile chips as well as Linux desktop to close the performance and compatibility gap.

Summary

I'm pleasantly surprised seeing good performance from ARM chips. Although Intel nor AMD aren't targeting mobile market right now with their products they do offer good I/O support. ARM products are trying to chew away some of that x86 market and with some improvements the hacker/maker board market could look much better than it is now. With Intel and AMD systems the more we pay the more raw performance we get. For many DIY projects we need a simple part that gets the job done. x86 systems are way better pick when we need good I/O support while more popular ARM boards (like Raspberry Pi) with better support are the way to go for a more custom electronics project. Higher performance ARM boards are harder to find a use for. They can maybe work as a multimedia or simple PC but that's rather not very common. We have consumer devices for that with rather better support and user experience out of the box. Those boards sometimes have GPIO but the knowledgebase is rather low (at least when compared to RPi or popular microcontroller boards that we can connect via USB to any PC).

Tested x86 boards offer flawless Linux and Windows support, at least in my case. I could pick latest Linux distribution, install it and it's done. ARM boards have more potential issues and often rely on less often released Kernel/drivers. If you are the end user without the knowledge on bootloader and software used by given board or SoC you are on the mercy of the vendor (or community) to support the board. This is something that needs improvement. Maybe something to do instead of releasing yet another ARM SoC SBC?

Also the business model is somewhat questionable. Raspberry Pi or microcontroller boards are cheap and offer unique features of interaction with electronics. Solid x86 systems like J5005 or more common and even more pricey Intel/AMD systems offer fluid desktop, gaming and compute performance. Many ARM boards fall in-between and seems to have problem defining them selves. Some do provide useful features like hardware SATA support for some storage intensive projects but that's not the norm. ARM board that is just PC-alike is not enough or to much depending if you need computer power or something simple for electronics.

When I started to gather hardware for this article I expected x86 boards to have a clear lead, but as it shows - most of them just have better I/O or that required unique combination of it. It's still reliable and easy to use. ARM is however quite close with performance and is capable of higher degrees of miniaturization. When you will see a new RPi model - don't feel the pressure to require a full set of modern I/O (well if they struck a deal then it's cool, but it's not the goal of RPi Foundation to make competitive hardware). If you will see a Raspberry killer headline - usually something is over-expensive and misses the mark. And when you will need some good storage, good connectivity or specific GPU performance, multi-display (or high resolution) support - check out cheap x86 boards - those are much better at it – if the price is right.

RkBlog

Hardware benchmarks and reviews, 13 November 2018,

Comment article