BSDCan2016 - v1.1.24a

BSDCan 2016
The Technical BSD Conference

Wojciech Macek
Day Talks #1 - 10 June - 2016-06-10
Room DMS 1140
Start time 13:30
Duration 01:00
ID 692
Event type Lecture
Track Embedded
Language used for presentation English

FreeBSD on Cavium ThunderX System on a Chip

The lecture describes the FreeBSD operating system port for the Cavium ThunderX CN88XX System on a Chip. ThunderX is a newly introduced, ARM64 (ARMv8) SoC designed for the high performance and server markets. It is currently the only one in the ARM world to incorporate up to 96 CPU cores in the system along with the whole technology to make it possible.

ThunderX is up to date with the latest trends in the computer architecture industry, including those that are relatively new to FreeBSD like SR-IOV (Single Root I/O Virtualization) or completely unique, such as ARM GICv3 and ITS). The main focus of this article is to provide a bottom-up overview of how the FreeBSD platform support for ThunderX was implemented and what are the benefits and pitfalls of the newly introduced ARMv8 technology in terms of the OS development. The paper also describes the key components of the ThunderX system and explains, how they were supported in FreeBSD. Finally, possible fields of further improvements are pointed out briefly.