Thursday 15 January 2015

CubieBoard 4

CubieBoard 4

I ’m not going to lie, I was excited when I heard from Jason King at low-power computing specialist www.newit.co.uk that he was going to send me the latest device from CubieTech. I had good reason: it’s the first single-board computer I’ve had a chance to use that has a whopping eight ARM Cortex processing cores on-board.

Readers who keep up with advances in mobile technology will be familiar with ARM’s big.LITTLE architecture: the combination of four high-performance cores with four lowpower cores on a single die, which provides on-demand performance alongside the ability to keep the battery drain to a minimum in low-power situations.


The AllWinner A80 Octa-Core at the heart of the new CubieBoard 4 is such a chip, but with a twist: the four 1.8GHz Cortex-A15 cores can be run alongside the four 1.2GHz Cortex-A7 cores to give the host operating system access to a full eight physical cores. There’s a PowerVR G6230 graphics processor with 64 FP32 ALU cores too.

In short, the CubieBoard 4 is a beast. I ran it through its paces using the Android 4.4.2 build pre-installed on the NAND flash partition, and it blazed through the benchmarks. It wasn’t until I installed the BOINC client to give the CPU cores a workout, though, that I encountered my first problem: heat.

CubieTech has bundled a few extras with the board. In addition to a relatively beefy 40mm heatsink for the SoC, there’s a twopiece plastic case in the box. When installed, this case sits on the top of the board and prevents the heatsink from breathing properly. The result? When using all eight cores, the SoC hit over 90°C and began throttling to protecting itself. First, the clock speed was reduced, so the Cortex-A15 cores were running at 1.2GHz; next, the high-power cores started being switched off altogether.

Running the board without the lid improved matters, but the board was still toasty: the SoC sat at over 80°C while a couple of small chips on the board, not benefiting from the heatsink, were too hot to touch. A look at the kernel showed it bouncing between 1.68GHz and its full 1.8GHz speed, although at least no cores were being deactivated. To its credit, though, the CubieBoard 4 didn’t appear to care about the high temperatures it was reaching: despite practically glowing in the dark, the board ran BOINC for three days without a single hiccough or crash before I used a micro-SD card to try Linux on it.

At the time of writing, there was only one distribution available to download: Linaro 14.04, with AllWinner’s customised (and outdated) 3.4 kernel. Installation to micro-SD card is simple, and installing it on the on-board NAND flash is barely more complicated. Performance on CPU-driven tasks is exemplary too: a single-core SysBench 95th percentile time of 9.25ms puts it just behind the more expensive Nvidia Jetson TK1’s charttopping score of 7.31ms – and the CubieBoard 4 has twice as many cores, meaning CPUbound multi-threaded tasks absolutely fly.

Sadly, switching from Android to Linux proper requires a sacrifice: the GPU. For reasons known only to IP holder Imagination Technologies, the PowerVR G6230 GPU has no accelerated graphics driver for Linux available, even as a closed-source binary-blob. The result is that general Linux desktop use including, but not limited to, web browsing and video playback, is painfully slow, and there’s no way to make use of the OpenCL compatibility of those 64 graphics processing cores to further boost the GPU compute performance either. Another oddity discovered during testing was the poor network performance; we measured just 190Mb/sec from the Gigabit Ethernet port, which is far below expectations. Whether this issue will be resolved in a future software update is unknown, but the lack of firmware to use the embedded Bluetooth radio under Linux is at least confirmed to be on the fix list. The 802.11/b/g/n Wi-Fi system, though, works just fine, and the presence of an RP-SMA connector is a welcome bonus in this new model; chip antennas may be cheap and compact, but they rarely offer much in the way of range.

There are a few other sacrifices when switching to the latest model too: the 96-pin and 54-pin GPIO headers of its predecessors have been reduced to 20 pins, and the traditional SATA connection is nowhere to be seen. A USB 3 On-The-Go port with a bundled adaptor cable goes some way to compensating for the latter, in addition to four USB 2 ports for other peripherals, but the lower CPU overhead of SATA would have been a welcome inclusion.

At £132.95 inc VAT, the CubieBoard 4 may be a more affordable option than the Tegra K1 for CPU-bound tasks, but its heat output and limitations make hard to recommend over its significantly cheaper dual-core predecessors for use in electronics projects.