All courses
115 courses across 16 tracks. Filter or search to narrow.
ARC-1013 days
CPU Pipelines & Microarchitecture
How a modern out-of-order core fetches, schedules and retires instructions, and why that determines the performance ceiling of your code.
Practitioner-taught
SAR 6,750Next 18 Oct
ARC-1023 days
Cache & Memory Hierarchy
The cache hierarchy from L1 to main memory, and the access patterns that decide whether your workload is fast or memory-bound.
Practitioner-taught
SAR 6,750Next 18 Oct
ARC-1102 days
SIMD & Vector Processing
Data-parallel execution on CPUs: AVX-512, NEON and SVE, and how to get the compiler to actually use them.
Practitioner-taught
SAR 5,250Next 15 Nov
ARC-2012 days
NUMA & Multi-Socket Systems
Non-uniform memory access, node topology discovery, and the placement decisions that quietly cost you throughput.
Practitioner-taught
SAR 5,250Next 8 Nov
ARC-2103 days
PCIe & System Interconnects
The fabric between CPU, memory and devices: PCIe generations, topology, and the bandwidth you actually get.
Practitioner-taught
SAR 7,880Next 25 Oct
ARC-3014 days
x86-64 Systems Programming
The x86-64 architecture from a systems perspective: privilege levels, paging, and the mechanisms the kernel is built on.
Practitioner-taught
SAR 12,000Next 11 Oct
ARC-3024 days
Arm64 Systems Programming
AArch64 for systems engineers: exception levels, translation regimes and the memory model that trips up x86 developers.
Practitioner-taught
SAR 12,000Next 18 Oct
ARC-3033 days
RISC-V Systems Programming
RISC-V privileged architecture for engineers arriving from x86 or Arm, including the state of the software ecosystem.
Practitioner-taught
SAR 9,000Next 18 Oct
KRN-1013 days
Kernel Architecture & Source Navigation
A guided tour of the kernel tree: how it is organised, how subsystems relate, and how to find the code you need.
Practitioner-taught
SAR 6,750Next 18 Oct
KRN-1022 days
Building & Configuring the Kernel
Configure, build, install and boot a kernel you compiled yourself, and understand what the thousands of config options actually do.
Practitioner-taught
SAR 4,500Next 18 Oct
KRN-1103 days
Modules & the Kernel Build System
Kbuild, module loading, symbol resolution and the module lifecycle from insmod to rmmod.
Practitioner-taught
SAR 6,750Next 15 Nov
KRN-2014 days
Process Lifecycle & Scheduling
How processes are created, scheduled and destroyed, and how scheduling decisions show up as latency in your application.
Practitioner-taught
SAR 10,500Next 8 Nov
KRN-2103 days
CFS to EEVDF Internals
The fair scheduler in depth, the move to EEVDF, and what changed for latency-sensitive workloads.
Practitioner-taught
SAR 9,000Next 18 Oct
KRN-2112 days
CPU Isolation & Affinity
Taking CPUs away from the kernel for latency-critical work: isolcpus, nohz_full, RCU offload and the gotchas.
Practitioner-taught
SAR 6,000Next 25 Oct
KRN-2204 days
Virtual Memory & Page Tables
Address spaces, page tables, faults and mappings — the machinery behind every memory access your program makes.
Practitioner-taught
SAR 10,500Next 22 Nov
KRN-2213 days
Allocators: Buddy, Slab, vmalloc
How the kernel allocates memory at every scale, and how allocator behaviour surfaces as fragmentation and latency.
Practitioner-taught
SAR 9,000Next 22 Nov
KRN-2223 days
Memory Pressure, OOM & cgroup v2
What happens when memory runs out: reclaim, swap, the OOM killer, and cgroup v2 limits that throttle silently.
Practitioner-taught
SAR 9,000Next 22 Nov
KRN-2303 days
Kernel Locking Primitives
Every locking primitive the kernel offers, when each is correct, and the deadlocks that follow from choosing wrong.
Practitioner-taught
SAR 7,880Next 8 Nov
KRN-2313 days
RCU in Depth
Read-copy-update from first principles: grace periods, publish-subscribe, and why RCU is everywhere in the kernel.
Practitioner-taught
SAR 9,000Next 8 Nov
KRN-2323 days
Memory Barriers & the Kernel Memory Model
The hardest correctness topic in the kernel: reordering, barriers, and reasoning about concurrent code that actually holds.
Practitioner-taught
SAR 10,120Next 8 Nov
DRV-1013 days
Character Devices & sysfs
Your first working driver: character device registration, file operations, and exposing state through sysfs.
Practitioner-taught
SAR 6,750Next 15 Nov
DRV-1103 days
The Unified Device Model
Buses, devices, drivers and classes — the abstraction that makes probe and bind work across every subsystem.
Practitioner-taught
SAR 7,880Next 25 Oct
DRV-1204 days
Platform Drivers & Device Tree
Describing non-discoverable hardware and writing the drivers that consume that description.
Practitioner-taught
SAR 10,500Next 11 Oct
DRV-2013 days
I2C & SPI Drivers
Client drivers for the two buses embedded hardware is built from, including regmap and error recovery.
Practitioner-taught
SAR 7,880Next 18 Oct
DRV-2104 days
USB Device Drivers
The USB stack from descriptors to URBs, on both the host and gadget sides.
Practitioner-taught
SAR 10,500Next 15 Nov
DRV-2204 days
PCI & PCIe Drivers
Enumeration, BARs, MSI-X and DMA for PCIe devices, which is where most accelerator drivers live.
Practitioner-taught
SAR 12,000Next 1 Nov
DRV-3013 days
DMA Engines & Mappings
Moving data without the CPU: the DMA API, coherency, IOMMU interaction and the bugs that only appear under load.
Practitioner-taught
SAR 9,000Next 8 Nov
DRV-3103 days
Interrupts & Threaded IRQs
Interrupt handling from the hardware edge to the bottom half, and how to keep hard IRQ context short.
Practitioner-taught
SAR 7,880Next 18 Oct
EMB-1014 days
Yocto Project Fundamentals
BitBake, layers and recipes, from a first build to an image you would actually ship.
Practitioner-taught
SAR 10,500Next 15 Nov
EMB-1104 days
Custom BSP Layers
Writing a board support layer from scratch: machine configuration, kernel recipe, bootloader and device tree.
Practitioner-taught
SAR 12,000Next 25 Oct
EMB-1203 days
Buildroot in Practice
The lighter alternative to Yocto: when Buildroot is the right call and how to use it well.
Practitioner-taught
SAR 7,880Next 11 Oct
EMB-2013 days
U-Boot Porting & Customisation
The bootloader layer: board bring-up, environment, boot scripts and recovery paths.
Practitioner-taught
SAR 9,000Next 18 Oct
EMB-2103 days
Secure Boot & Chain of Trust
Establishing and maintaining a verified boot chain from ROM to userspace, including key management reality.
Practitioner-taught
SAR 9,000Next 15 Nov
EMB-2202 days
Init Systems & Fast Boot
systemd and the alternatives, plus measuring and cutting boot time to a target.
Practitioner-taught
SAR 5,250Next 1 Nov
EMB-3013 days
Read-Only Rootfs & OTA Updates
Update strategies that survive power loss in the field, and the filesystem layout that makes them possible.
Practitioner-taught
SAR 7,880Next 8 Nov
EMB-3102 days
SBOM & Licence Compliance
Producing a defensible software bill of materials and meeting open source licence obligations — now a regulatory matter, not just good practice.
Practitioner-taught
SAR 5,250Next 25 Oct
EMB-3202 days
Long-Term Maintenance Strategy
Keeping a shipped product secure and buildable for a decade, which is where most embedded programmes fail.
Practitioner-taught
SAR 6,000Next 22 Nov
RTL-1013 days
PREEMPT_RT Internals
What the real-time patchset actually changes in the kernel, now that most of it has landed mainline.
Practitioner-taught
SAR 9,000Next 1 Nov
RTL-1103 days
Latency Analysis & cyclictest
Measuring latency honestly: the tools, the methodology, and the mistakes that produce meaningless numbers.
Practitioner-taught
SAR 7,880Next 18 Oct
RTL-1203 days
Tuning for Determinism
Turning a general-purpose platform into one that holds a deadline: isolation, affinity, firmware and BIOS.
Practitioner-taught
SAR 9,000Next 15 Nov
RTL-2012 days
Motion Control Systems
Applying real-time Linux to closed-loop control, with the architecture patterns that work in production.
Practitioner-taught
SAR 6,000Next 11 Oct
RTL-2103 days
Industrial Fieldbus & TSN
Deterministic networking for industrial systems: EtherCAT, PROFINET and Time-Sensitive Networking.
Practitioner-taught
SAR 9,000Next 8 Nov
DBG-1012 days
Reading an Oops & Panic Analysis
Turning a kernel splat into a precise location in the source, and knowing what the register dump is telling you.
Practitioner-taught
SAR 5,250Next 11 Oct
DBG-1103 days
kdump & the crash Utility
Capturing a crash dump in production and doing a real post-mortem on it.
Practitioner-taught
SAR 9,000Next 8 Nov
DBG-1203 days
kgdb & Live Kernel Debugging
Interactive kernel debugging over serial and network, plus dynamic debug for cases where stopping is not an option.
Practitioner-taught
SAR 9,000Next 25 Oct
DBG-2013 days
ftrace & trace-cmd
The kernel's built-in tracer, used properly: function graphs, events and latency tracers.
Practitioner-taught
SAR 7,880Next 1 Nov
DBG-2103 days
perf: Sampling to Flame Graphs
CPU and off-CPU analysis with perf, from first sample to a flame graph that tells you something actionable.
Practitioner-taught
SAR 7,880Next 11 Oct
DBG-2204 days
eBPF & bpftrace
Programmable observability: one-liners for immediate answers, custom programs for the questions nothing else answers.
Practitioner-taught
SAR 12,000Next 15 Nov
DBG-3013 days
Race Conditions & Lock Contention
The bugs that only appear under load on someone else's machine, and a method for actually finding them.
Practitioner-taught
SAR 10,120Next 22 Nov
DBG-3103 days
Memory Corruption: KASAN & KFENCE
Finding use-after-free, out-of-bounds and uninitialised memory before they become a security advisory.
Practitioner-taught
SAR 9,000Next 1 Nov
PRF-1012 days
Performance Methodology & the USE Method
A repeatable process for performance investigation, so you stop tuning things that were never the bottleneck.
Practitioner-taught
SAR 5,250Next 1 Nov
PRF-1102 days
Benchmarking Without Fooling Yourself
Producing performance numbers that survive scrutiny, including your own six months later.
Practitioner-taught
SAR 5,250Next 11 Oct
PRF-2013 days
CPU & Scheduler Tuning
Getting the scheduler out of your way: placement, priorities, frequency scaling and isolation.
Practitioner-taught
SAR 9,000Next 22 Nov
PRF-2103 days
Memory & TLB Optimisation
Memory-bound workloads: huge pages, NUMA placement, allocator behaviour and reclaim pressure.
Practitioner-taught
SAR 9,000Next 1 Nov
PRF-2203 days
I/O & Block Layer Tuning
Storage performance from the filesystem to the device queue, including NVMe specifics.
Practitioner-taught
SAR 9,000Next 18 Oct
PRF-2303 days
Network Stack Tuning
Getting throughput and latency out of the kernel network path, and knowing when to leave it.
Practitioner-taught
SAR 9,000Next 15 Nov
SEC-1012 days
Reading Kernel CVEs
Assessing whether a kernel CVE actually affects you, which is usually a different question from whether it is severe.
Practitioner-taught
SAR 5,250Next 11 Oct
SEC-1103 days
Exploit Mitigations & Hardening
The mitigations available in a modern kernel, what each actually stops, and what they cost.
Practitioner-taught
SAR 9,000Next 8 Nov
SEC-1202 days
Attack Surface Reduction
Making the kernel smaller and less reachable, which beats mitigating attacks you could have made impossible.
Practitioner-taught
SAR 6,000Next 25 Oct
SEC-2013 days
Multi-Branch Backporting
Taking an upstream fix and applying it correctly across several maintained branches — the core skill of a vendor security team.
Practitioner-taught
SAR 9,000Next 1 Nov
SEC-2102 days
Stable, LTS & Vendor Tree Hygiene
Working with the upstream stable process and keeping a vendor tree that does not rot.
Practitioner-taught
SAR 5,250Next 18 Oct
SEC-2202 days
Building an Advisory Workflow
The process around the engineering: intake, assessment, communication and evidence, on a deadline.
Practitioner-taught
SAR 5,250Next 15 Nov
SEC-3013 days
LSM, SELinux & AppArmor
Mandatory access control on Linux: how the LSM framework works and how to write policy that is actually enforced.
Practitioner-taught
SAR 9,000Next 22 Nov
SEC-3102 days
Landlock & Kernel Lockdown
Newer confinement mechanisms: unprivileged sandboxing with Landlock and restricting root with lockdown.
Practitioner-taught
SAR 6,000Next 8 Nov
SEC-3203 days
Integrity: IMA/EVM & dm-verity
Measuring and verifying what runs on the system, from block device to individual file.
Practitioner-taught
SAR 9,000Next 18 Oct
NET-1013 days
Network Stack Architecture
The path a packet takes through the kernel, which is the map you need before tuning or debugging anything.
Practitioner-taught
SAR 7,880Next 18 Oct
NET-1103 days
Socket Layer & Protocol Handling
TCP and UDP implementation details that explain the behaviour you see on the wire.
Practitioner-taught
SAR 9,000Next 22 Nov
NET-1203 days
netfilter & nftables
Packet filtering and NAT as implemented, not as configured by copying rules from the internet.
Practitioner-taught
SAR 7,880Next 1 Nov
NET-2014 days
XDP & eBPF Networking
Processing packets at the driver level for filtering, load balancing and DDoS mitigation at line rate.
Practitioner-taught
SAR 12,000Next 8 Nov
NET-2103 days
DPDK & Kernel Bypass
When to leave the kernel network stack entirely, and what you give up when you do.
Practitioner-taught
SAR 9,000Next 25 Oct
NET-2203 days
Traffic Control & QoS
Shaping, scheduling and prioritising traffic with tc, including the modern queue disciplines.
Practitioner-taught
SAR 9,000Next 11 Oct
STO-1013 days
Block Layer & I/O Schedulers
How an I/O request travels from the filesystem to the device, and what the scheduler does to it on the way.
Practitioner-taught
SAR 7,880Next 15 Nov
STO-1103 days
NVMe & NVMe-oF
NVMe as a protocol and as a driver, including fabrics for disaggregated storage.
Practitioner-taught
SAR 9,000Next 25 Oct
STO-1203 days
Device Mapper & LVM
Composing block devices: linear, striped, snapshot, thin provisioning, crypt and cache targets.
Practitioner-taught
SAR 7,880Next 11 Oct
STO-2013 days
VFS Internals
The abstraction every filesystem implements: inodes, dentries, the page cache and the locking around them.
Practitioner-taught
SAR 9,000Next 18 Oct
STO-2103 days
ext4 & XFS Internals
The on-disk layout and operational behaviour of the two filesystems most production Linux runs on.
Practitioner-taught
SAR 9,000Next 15 Nov
STO-2204 days
Writing a Filesystem from Scratch
Implement a small but real filesystem, which is the fastest way to genuinely understand the VFS.
Practitioner-taught
SAR 13,500Next 1 Nov
VRT-1014 days
KVM Internals
How Linux becomes a hypervisor: vCPU execution, memory virtualisation and the QEMU relationship.
Practitioner-taught
SAR 12,000Next 18 Oct
VRT-1103 days
VFIO & Device Passthrough
Giving a guest direct access to real hardware — the mechanism behind GPU passthrough.
Practitioner-taught
SAR 9,000Next 15 Nov
VRT-1203 days
virtio Device Drivers
The paravirtualised device model: virtqueues, transports and writing a virtio driver.
Practitioner-taught
SAR 9,000Next 1 Nov
VRT-2013 days
Namespaces & cgroups from Scratch
Build a container by hand with the primitives, so the abstraction stops being magic.
Practitioner-taught
SAR 7,880Next 8 Nov
VRT-2103 days
Container Runtimes & the OCI Spec
What runc, containerd and the OCI specifications actually define, and how images become running processes.
Practitioner-taught
SAR 7,880Next 18 Oct
VRT-2203 days
Container Security & seccomp
Making containers a real security boundary rather than an organisational one.
Practitioner-taught
SAR 9,000Next 22 Nov
AIC-1003 days
Foundations for AI Compute
The architecture, operating system and networking groundwork every GPU systems engineer is assumed to have and often does not.
Practitioner-taught
SAR 6,750Next 25 Oct
AIC-1103 days
GPU Architecture, Memory & Interconnects
How the hardware constrains your workload: SIMT execution, the memory hierarchy and the fabric between GPUs.
Practitioner-taught
SAR 6,750Next 11 Oct
AIC-2004 days
Linux for GPU Systems
What the kernel is doing underneath your training job, and how to tune it. The layer almost nobody teaches.
Practitioner-taught
SAR 10,500Next 15 Nov
AIC-2104 days
RDMA & AI Cluster Networking
Build and debug the fabric distributed training runs on, from queue pairs up to a tuned NCCL all-reduce.
Practitioner-taught
SAR 10,500Next 1 Nov
AIC-2205 days
CUDA & HIP Programming
Write, profile and optimise GPU kernels on both vendors, including the CUDA-to-HIP porting path.
Practitioner-taught
SAR 13,120Next 11 Oct
AIC-2304 days
Distributed Training with PyTorch
From a single-GPU training loop to sharded multi-node training that survives a node failure.
Practitioner-taught
SAR 10,500Next 15 Nov
AIC-3004 days
Containers, Kubernetes & GPU Schedulers
Run a shared GPU cluster multiple teams can actually use: partitioning, scheduling, quotas and isolation.
Practitioner-taught
SAR 10,500Next 18 Oct
AIC-3103 days
Storage & Data Pipelines for AI
Stop starving your GPUs: parallel filesystems, GPUDirect Storage and pipelines built for sustained throughput.
Practitioner-taught
SAR 7,880Next 22 Nov
AIC-3203 days
MLOps & Inference Serving
Get models off a laptop and onto a GPU endpoint that scales, with the pipeline machinery around them.
Practitioner-taught
SAR 7,880Next 1 Nov
AIC-3302 days
AI Infrastructure Security & Observability
Harden a multi-tenant GPU platform and see what it is doing before users report a problem.
Practitioner-taught
SAR 6,000Next 18 Oct
AIC-4003 days
Large-Scale Training & Datacenter Architecture
The thousand-GPU conversation: 3D parallelism, reference architectures, TCO and where the hardware is heading.
Practitioner-taught
SAR 9,000Next 8 Nov
FPG-1014 days
FPGA Design for Software Engineers
The mental shift from sequential code to concurrent hardware, taught for people with a software background.
Practitioner-taught
SAR 9,000Next 1 Nov
FPG-1103 days
Vivado Timing Closure & STA
Static timing analysis and the practical work of closing timing on a design that does not meet it.
Practitioner-taught
SAR 7,880Next 11 Oct
FPG-1203 days
HLS & HDL Coder Workflows
Generating hardware from higher-level descriptions, and knowing when the result is good enough.
Practitioner-taught
SAR 7,880Next 15 Nov
FPG-2013 days
Linux Drivers for FPGA Accelerators
Making an accelerator usable from Linux: memory mapping, DMA, interrupts and a sane userspace interface.
Practitioner-taught
SAR 9,000Next 22 Nov
FPG-2103 days
DSP on FPGA: NCO, CIC & FIR
The signal processing building blocks implemented in hardware, with real fixed-point analysis.
Practitioner-taught
SAR 9,000Next 1 Nov
VIS-1013 days
MIPI CSI-2 & GMSL2 Camera Interfaces
The physical and protocol layers of embedded camera interfaces, and how to bring up a link that will not start.
Practitioner-taught
SAR 7,880Next 22 Nov
VIS-1104 days
V4L2 Driver Development
Writing and debugging Video4Linux2 drivers, including the media controller graph for complex pipelines.
Practitioner-taught
SAR 12,000Next 1 Nov
VIS-1203 days
Multi-Camera Synchronisation
Keeping many cameras aligned in time, which is where multi-camera systems usually fail.
Practitioner-taught
SAR 9,000Next 18 Oct
VIS-2013 days
ISP Tuning & Autofocus
The image signal processor pipeline and the control loops on top of it: exposure, white balance and focus.
Practitioner-taught
SAR 9,000Next 25 Oct
VIS-2103 days
Jetson Camera Pipelines with LibArgus
Building capture and processing pipelines on NVIDIA Jetson, from sensor to inference input.
Practitioner-taught
SAR 7,880Next 11 Oct
FRM-1013 days
Bare-Metal C for Microcontrollers
Writing firmware with no operating system underneath: startup, linker scripts, peripherals and interrupts.
Practitioner-taught
SAR 6,750Next 1 Nov
FRM-1103 days
RTOS Fundamentals: Zephyr & FreeRTOS
Task scheduling, synchronisation and driver models in a small real-time operating system.
Practitioner-taught
SAR 7,880Next 11 Oct
FRM-1203 days
Bootloaders & Firmware Update
Updating firmware in the field without bricking devices, including signature verification and rollback.
Practitioner-taught
SAR 7,880Next 15 Nov
FRM-2013 days
I2C, SPI & CAN Protocol Firmware
Implementing and debugging the buses embedded systems communicate over, from the firmware side.
Practitioner-taught
SAR 7,880Next 22 Nov
FRM-2103 days
CMIS & Optical Module Firmware
Firmware for pluggable optical modules: the CMIS management interface and the state machines behind it.
Practitioner-taught
SAR 9,000Next 1 Nov
HPC-1014 days
MPI Programming
Distributed memory parallelism with MPI, from point-to-point messages to collectives that scale.
Practitioner-taught
SAR 10,500Next 11 Oct
HPC-1103 days
OpenMP & Threading Models
Shared memory parallelism done correctly, including the NUMA and false sharing traps.
Practitioner-taught
SAR 7,880Next 8 Nov
HPC-2013 days
Slurm & Workload Management
Running a shared cluster: partitions, accounting, fair share, and generic resources for GPUs.
Practitioner-taught
SAR 7,880Next 1 Nov
HPC-2103 days
Parallel Filesystems: Lustre & GPFS
Shared storage at cluster scale: architecture, striping, metadata behaviour and performance debugging.
Practitioner-taught
SAR 9,000Next 11 Oct
HPC-2203 days
Cluster Provisioning & Config Management
Building and maintaining hundreds of identical nodes, and keeping them identical.
Practitioner-taught
SAR 7,880Next 15 Nov
HPC-2303 days
HPC Performance Analysis
Profiling applications that span many nodes, where the bottleneck is rarely where you expect.
Practitioner-taught
SAR 9,000Next 25 OctNothing matched. Try a broader search.