RTL-120 · Real-Time Systems
Tuning for Determinism
Turning a general-purpose platform into one that holds a deadline: isolation, affinity, firmware and BIOS.
Who this course is for
Platform engineers responsible for a system that must hold a deadline — who have an RT kernel and a measurement method and now need the platform itself to stop interfering.
Prerequisites
Course outline
Day 1 — Taking CPUs away from the kernel
- isolcpus, nohz_full and rcu_nocbs: what each does and why you need them together
- Housekeeping CPUs and what still runs on isolated cores
- cpusets and cgroup v2 for runtime partitioning
- Kernel threads, workqueues and ksoftirqd placement
- Verifying isolation actually happened: /proc/interrupts, task placement, timer and RCU traces
Day 2 — Interrupts and the firmware underneath
- IRQ affinity and steering interrupts away from hot CPUs
- IRQ-balancing daemons and when to disable them
- SMI and system management mode: the latency source Linux cannot see
- BIOS settings that destroy determinism: C-states, P-states, turbo, SMT
- CPU frequency governors, idle states and the latency cost of power saving
Day 3 — The RT application and the repeatable checklist
- mlockall, stack prefaulting and the page faults that kill determinism
- Huge pages and allocator behaviour in RT tasks
- Priority assignment across application threads, IRQ threads and kernel threads
- Memory and NUMA placement for the RT process
- Building a repeatable tuning checklist and revalidating it after platform changes
Hands-on labs
Labs follow the academy model — 35% principles, 20% guided investigation, 45% engineering studio. Every claim you make in a lab is backed by a trace, a counter or a measurement you captured yourself. How we teach
- Lab: Isolate a CPU set with isolcpus/nohz_full/rcu_nocbs and prove residual tick and RCU work moved to housekeeping cores
- Lab: Steer every IRQ off your RT cores with affinity masks; verify with /proc/interrupts before and after
- Lab: Measure the latency cost of C-states, frequency scaling and SMT by toggling each and rerunning cyclictest
- Lab: Convert an RT application to mlockall with stack prefaulting and drive its page-fault count to zero
- Lab: Assemble a full platform tuning manifest — boot flags, affinity script, BIOS list — and validate it from a cold boot
Capstone project
Turn a general-purpose machine into a deterministic partition: starting from an untuned baseline, apply CPU isolation, IRQ steering, firmware settings and application memory locking in measured steps, recording the cyclictest distribution after each change so every line of the final tuning manifest is justified by a before/after measurement — and document the residual noise sources you could not remove.
What you leave with
- A complete isolation/IRQ/firmware tuning procedure with verification at each step
- Proof-by-measurement habits: every tuning line tied to a latency delta
- An RT application memory and priority checklist (mlockall, prefaulting, huge pages)
- A reusable platform tuning manifest template
How it runs
Every course follows the same model: 35% principles, 20% guided investigation, 45% engineering studio. You leave with working code, raw measurements and an evidence-based report — not a certificate of attendance. Read the methodology or see a full sample lesson.
Material is adapted to your kernel version, hardware and workload before a private delivery. For public cohorts, the environment is provided and configured.
Questions
Who is this course for?
Platform engineers responsible for a system that must hold a deadline — who have an RT kernel and a measurement method and now need the platform itself to stop interfering. It sits at advanced level within the Real-Time Systems track.
What do I need to know already?
Specific prerequisites for this course: RTL-110 or equivalent latency-measurement experience; Linux administration including boot parameters; Understanding of scheduling priorities and CPU affinity. We confirm levels before the cohort starts and adapt if a group is stronger or weaker than expected.
Can this run privately for my team?
Yes. Any course runs on-site at your offices anywhere, or live online for a distributed team, with labs adapted to your hardware and codebase.
What is the difference between in-person and online?
In person is 3 full days with hardware on your desk, capped at 14. Online is 6 half-day sessions across about two weeks so you can keep working, capped at 20, with remote lab access.
Do you invoice companies?
Yes. Purchase orders are accepted and invoicing is available in USD, EUR, GBP, SAR and CAD.
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 15 Nov – 17 Nov 20263 full days | RiyadhIn person · KAFD Conference Centre | 5 of 14 | SAR 8,100until 16 Oct | ||
| 22 Nov – 24 Nov 20263 full days | Kuwait CityIn person · Al Hamra Tower | 10 of 14 | KWD 670until 23 Oct | ||
| 29 Nov – 1 Dec 20263 full days | MuscatIn person · Knowledge Oasis Muscat | 5 of 14 | OMR 830until 30 Oct | ||
| 29 Nov – 6 Dec 20266 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 15 of 20 | US$1,580until 30 Oct | ||
| 30 Nov – 2 Dec 20263 full days | OttawaIn person · Kanata North Tech Park | 10 of 14 | CAD 2,930until 31 Oct | ||
| 7 Dec – 9 Dec 20263 full days | TorontoIn person · MaRS Discovery District | 5 of 14 | CAD 2,930until 7 Nov | ||
| 7 Dec – 14 Dec 20266 half-days | Europe bandLive online · 09:00–13:00 CET | 4 of 20 | US$1,580until 7 Nov | ||
| 14 Dec – 16 Dec 20263 full days | LondonIn person · Shoreditch Works | 10 of 14 | GBP 1,680until 14 Nov | ||
| 14 Dec – 21 Dec 20266 half-days | Americas bandLive online · 13:00–17:00 ET | 9 of 20 | US$1,580until 14 Nov | ||
| 21 Dec – 23 Dec 20263 full days | BerlinIn person · Factory Görlitzer Park | 5 of 14 | EUR 1,990until 21 Nov |
Dates shown for the next few months. If nothing fits, tell us where and when — cohorts are added on demand, and private delivery can be scheduled any week.
More in Real-Time Systems
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-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