How enthusiasts designed a powerful desktop PC with an ARM processor

When he was growing up, a dream of Linux pioneer Linus Torvalds was to acquire the Acorn Archimedes, a groundbreaking personal computer with the first ARM RISC chips.

Cavium ThunderX

But in 1987, Archimedes wasn’t available to Torvalds in Finland, so he settled for the Sinclair QL. In the meanwhile, the Archimedes failed and disappeared from the scene, killing any chance for ARM chips to dominate PCs.

Since then, multiple attempts to put ARM chips in PCs have failed. Outside of a few Chromebooks, most PCs have x86 chips from Intel or AMD.

The domination of x86 is a problem for Linaro, an industry organization that advocates ARM hardware and software. Many of its developers use x86 PCs to compile programs for ARM hardware. That’s much like trying to write Windows programs on a Mac.

That fact doesn’t sit well with George Grey, CEO of Linaro.

“Linus mentioned this a little while ago: How do we get developers to work on ARM first? Why are will still using Intel tools?” Grey asked during a speech at this month’s Linaro Connect conference in Budapest.

A powerful Linux laptop or mini-desktop based on an ARM processor needs to built so developers can write and compile applications, he said.

“May be we can take a Chromebook design and put more memory, get upstream Linux support on it, and use it as a developer platform for developers to carry to conferences,” Grey said then.

To further that idea, a group of ARM hardware enthusiasts gathered in a room at Linaro Connect to conceptualize a powerful ARM PC. The group settled on building a computer like the Intel NUC—a mini-desktop with a powerful board computer in it.

The free-flowing session was entertaining, with attendees passionately sharing ideas on the chip, memory, storage, and other components in the PC.

The session, which is available on Linaro’s site, also highlighted issues involved in building and supporting an ARM-based PC. There were concerns about whether ARM chips would deliver performance adequate to run powerful applications.

There were also concerns about components and about providing a Linux user experience acceptable to users.

Also important was building a viable ARM PC that would attract hardware makers to participate in such an effort. One worry was the reaction of the enthusiast audience, who might sound off if an ARM desktop didn’t work properly, putting hardware vendors and chipmakers at the receiving end of criticism and bad press.

“Based on a research and efforts today, building an ideal PC is going to be hard,” said Yang Zhang, director of the technologies group at Linaro.

Attendees quickly agreed that the ARM PC would need an expandable x86-style board with DDR4 memory DIMM slot, and NVMe or SATA slots for plugging in SSDs or other drives. Other features would include gigabit slots and USB slots.

“Definitely, we need to be looking at something with real I/O, not some crappy mobile chipset with soldered-on 2GB of RAM,” one attendee said. (Attendees aren’t identified in the recording of the discussion.)

Many ARM-based computer boards like Raspberry Pi 3 and Pine64 can be used as PCs, but have limited expandability and components integrated on the board. They aren’t ideal for PCs handling heavy workloads.

Also, Zhang pointed out that LPDDR4, which is used in such “mobile” chipsets, is slower than DDR4 memory, which is why the DIMM slots would be needed on the ARM PC.

Next, the discussion shifted to the system-on-chip, and suggestions were made to use CPUs from companies including Marvell and Nvidia. Chips from Qualcomm, Cavium, and HiSilicon weren’t suggested because those companies were uninterested in building a PC-style computer for development with Linaro. Ironically, Qualcomm’s Snapdragon 835 will be used in Windows 10 PCs later this year.

An interesting suggestion was Rockchip’s RK3399, which is being used in Samsung’s Chromebook Pro, which has PCI-Express and USB 3.0. Google and Samsung have been putting in a decent amount of work for Linux support on the chip. But it still is a mobile chip, and not designed for full-powered ARM desktop.

“I have a 24-core Opteron right. To replace that I would need a 64-core Cortex A73 or something, which doesn’t exist,” said the attendee who suggested the RK3399.

The discussion became a battle between server chips and mobile chips, which each had their issues. While the server chips boast good software support, they are expensive. The mobile chips are cheap but have poor Linux OS support. Software support would need to be added by independent developers, and that can be a considerable amount of work.

In 2015, 96boards—the ARM hardware effort of Linaro — built a development board called HuskyBoard wth AMD’s Opteron A1100 server chip, but that didn’t go well. AMD has now abandoned ARM server chips and recently released the 32-core Naples chip based on its x86 Zen architecture.

The initial PC will perhaps have a server chip with decent Linux kernel support. Standard interfaces, sufficient memory, and decent graphics will matter more, as will ensuring that standard components like heatsinks and memory DIMMs can be bought off the shelf.

The purpose of the gathering was to get the ball rolling for the development of a real desktop based on ARM. The PC will likely be developed by 96boards, which provides specifications to build open-source development boards.