From ed04ccd8e2297458ec97381806a05dea13090f0f Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 7 May 2026 09:47:05 +0300 Subject: update docs and ascii banner --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index f47f405..532d581 100644 --- a/README.md +++ b/README.md @@ -2,23 +2,23 @@ -I/O Riot NG is an experiments with BPF. This program traces for synchronous I/O syscalls and then analyses the time taken for each of those syscalls. This is especially useful for drawing FlameGraphs like these: +I/O Riot NG is an experiment with BPF. It traces synchronous I/O syscalls and analyses how long each one took. Useful for drawing FlameGraphs like these: -Maybe this is a spiritual successor of one of my previous projects, I/O Riot https://codeberg.org/snonux/ioriot, the latter was based on SystemTap and C. The NG is based on Go, C and BPF (via libbpfgo). +A spiritual successor to one of my previous projects, I/O Riot (https://codeberg.org/snonux/ioriot), which was based on SystemTap and C. The NG is based on Go, C, and BPF (via libbpfgo). -This works only on Linux! +Linux only. ## Demo A short guided tour with animated GIFs of every major surface lives in [`docs/tutorial/tutorial.md`](./docs/tutorial/tutorial.md). Two teasers: -**Startup — the PID picker:** `sudo ./ior` opens a searchable process list. Navigate with arrow keys, filter by typing, and press `Enter` to start tracing. The dashboard appears immediately after. +**Startup, the PID picker:** `sudo ./ior` opens a searchable process list. Navigate with arrow keys, filter by typing, press `Enter` to start tracing. The dashboard appears right after. Cold start: PID picker, then the dashboard appears -**Live flamegraph tab:** Once tracing, tab `1` shows a live flamegraph that rebuilds in real time as I/O events arrive. Bars grow and shift with the workload — this is the default landing tab. +**Live flamegraph tab:** Once tracing, tab `1` shows a live flamegraph that rebuilds in real time as I/O events arrive. Bars grow and shift with the workload. This is the default landing tab. Live in-TUI flamegraph rebuilding from real workload @@ -33,7 +33,7 @@ The demo is fully reproducible: `mage installDemoTools` once, then `sudo -v && m ## Build Builds a fully static `ior` binary inside a Rocky Linux 9 container and writes -it to the repo root — no local Go, clang, or libbpfgo setup required: +it to the repo root. No local Go, clang, or libbpfgo setup required: ```shell mage buildDocker @@ -55,7 +55,7 @@ For contributors who need a native build (Fedora / Rocky Linux 9), see Build on one machine, then `scp ior other-host:/usr/local/bin/` and run it anywhere. The binary is fully statically linked and uses libbpf CO-RE (Compile-Once, Run-Everywhere) to adapt field offsets to the target kernel's -BTF at load time — no recompile per host or kernel version needed. +BTF at load time. No recompile per host or kernel version needed. See [docs/build-rocky-linux-9.md](./docs/build-rocky-linux-9.md) for the full explanation. -- cgit v1.2.3