{"repo":"cong-or/hud","free":true,"listed":false,"github":"https://github.com/cong-or/hud","clone":"git clone https://github.com/cong-or/hud.git","description":"Find code blocking your Tokio workers. eBPF-powered, no instrumentation.","language":"Rust","stars":198,"topics":["async","ebpf","performance","profiler","rust","cli","debugging","linux","observability","tokio"],"license":"MIT","category":"analytics","readme_excerpt":"hud Find what's blocking your Tokio runtime. Zero-instrumentation eBPF profiler. Linux only. This tool uses eBPF, which is a Linux kernel feature. It does not work on macOS or Windows. The Problem Tokio uses cooperative scheduling. Tasks yield at .await points, trusting that work between awaits is fast. When it isn't—CPU-heavy code, sync I/O, blocking locks—one task starves the rest. These bugs are silent. No errors, no panics—just degraded throughput. hud makes them visible. How It Works Watches the Linux scheduler via eBPF. When a worker thread experiences high OS-level scheduling latency (time the thread waits in the kernel run queue, not Tokio's task queue), captures a stack trace. High scheduling latency is a symptom of blocking—when one task monopolizes a worker, others queue up waiting. Why hud? Unlike tokio-console or tokio-blocked, hud requires no code changes—attach to any running Tokio process. Why not just use tokio-console? It's the official tool and more accurate—it measures actual task poll durations. Use it if you can. But it requires adding console-subscriber and rebuilding. What about Tokio's unstable blocking detection? Compile with RUSTFLAGS=\"--cfg tokio unstable\" and Tokio warns when task polls exceed a threshold. This catches the blocker directly, not victims—more accurate than hud. But it requires a rebuild, and only catches blocks exceeding the threshold during that run. hud exists for profiling without code changes or rebuilds—staging environments, lo","default_branch":null,"files":null,"tree":[],"storefront":"/r/cong-or","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cong-or/hud/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}