Speedscope is a fast, interactive web-based viewer for performance profiles that enables developers to explore profiling data across multiple programming languages and environments.
The tool solves the problem of making sense of raw profiling data by providing an interactive visualization interface. Rather than requiring developers to parse complex profiling output manually, speedscope ingests profiles from a variety of profilers and presents them in an explorable format. This approach lets you drill down into performance data to identify bottlenecks, memory allocations, or other issues represented in the profile, regardless of which language or profiler generated the data.
Speedscope suits teams working across multiple languages and toolchains. It accepts profiles from JavaScript environments including Chrome, Firefox, Safari, and Node.js, as well as Ruby profilers like stackprof and rbspy, Python tools including py-spy and pyinstrument, Go's pprof, Java's async-profiler and Flight Recorder, PHP, Rust, Erlang/Elixir, Haskell, .NET Core, and native code profilers like macOS Instruments and Linux perf. The web-based interface means no installation is required beyond uploading a profile file. This breadth of format support makes it particularly valuable for organizations with polyglot codebases or developers who switch between languages frequently.
The project maintains active engagement with its user base through documented import workflows for each supported profiler and a clear process for contributing additional format support. Development activity shows responsiveness to feature requests and bug reports, with the maintainers actively triaging issues related to new import sources. The codebase demonstrates ongoing refinement of the visualization engine and parser infrastructure to handle diverse profiling formats reliably.