Make Metal shaders legible.
Parse .gputrace bundles. Export to pprof, Chrome, or Perfetto. Compare runs. Profile real shaders without Xcode.
Open source. MIT licensed. CLI tool. No C toolchain required.
What it does- Statistics and profiling —
stats,profiler,shaders,kernels: dispatch counts, kernel timing, pipeline breakdown, source-level attribution. - pprof export — open any Metal trace in
go tool pprof. Graph, flamegraph, and the usual Go-native tooling you already know. - Timeline export — produce Chrome / Perfetto timelines for visual shader inspection, buffer access patterns, and command-buffer analysis.
- Trace diff — compare two runs with per-dispatch, per-kernel, per-encoder breakdowns, and a natural-language explanation of what changed.
gputrace makes Metal shaders legible the way pprof makes Go programs legible. When mlx-go or a skiff inference path needs to be profiled, gputrace is how the numbers come out. Built on the same apple bindings that give Go native access to Metal — single static binary, no Xcode in the loop.