# 使用 Homebrew, dnf, MacPorts, Nix 安装 flamegraph

查看 flamegraph 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:flamegraph
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install flamegraph
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install flamegraph
```

  证据: MacPorts ports tree: devel/flamegraph/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- dnf (92%):

```sh
sudo dnf install flamegraph
```

  证据: Fedora Rawhide package metadata: flamegraph from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#flamegraph
```

  证据: nixpkgs package indexes: pkgs/by-name/fl/flamegraph/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## 软件包事实

- **软件包键:** brew:flamegraph
- **软件包管理器:** Homebrew
- **版本:** 1.0
- **来源摘要:** Stack trace visualizer
- **主页:** <https://github.com/brendangregg/FlameGraph>
- **仓库:** <https://github.com/brendangregg/FlameGraph>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- difffolded.pl (别名)
- files.pl (别名)
- flamegraph.pl (别名)
- pkgsplit-perf.pl (别名)
- range-perf.pl (别名)
- stackcollapse-aix.pl (别名)
- stackcollapse-elfutils.pl (别名)
- stackcollapse-gdb.pl (别名)
- stackcollapse-go.pl (别名)
- stackcollapse-instruments.pl (别名)
- stackcollapse-jstack.pl (别名)
- stackcollapse-ljp.awk (别名)
- stackcollapse-perf-sched.awk (别名)
- stackcollapse-perf.pl (别名)
- stackcollapse-pmc.pl (别名)
- stackcollapse-recursive.pl (别名)
- stackcollapse-sample.awk (别名)
- stackcollapse-stap.pl (别名)
- stackcollapse-vsprof.pl (别名)
- stackcollapse-vtune.pl (别名)
- stackcollapse.pl (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 1.0
## 项目历史与用法

FlameGraph is Brendan Gregg's reference implementation for creating interactive SVG flame graphs from stack profiles. It ships the `flamegraph.pl` renderer and many `stackcollapse-*` converters that turn profiler output into folded stack input.

### 项目历史

The official Flame Graphs page describes flame graphs as a visualization Brendan Gregg created to identify the most frequent code paths in profiled software. The GitHub project packages the open source programs used to create interactive SVGs.

The repository documents a three-step workflow: capture stacks, fold stacks, and render with `flamegraph.pl`. Its converter scripts cover profiler outputs from Linux perf, DTrace, SystemTap, FreeBSD pmcstat, Xcode Instruments, Intel VTune, Java jstack, Go pprof, gdb, and other sources.

### 采用历史

The visualization spread from Gregg's performance-engineering work into talks, articles, operating-system profilers, open source tools, and commercial profilers. The official site says there are now over 100 other implementations and that flame graphs are available in most commercial profilers.

A major adoption path was the simplicity of the file format: profilers only need stack samples that can be collapsed into semicolon-separated folded stacks, after which the reference Perl script emits a portable interactive SVG.

### 使用方式

The common package workflow is `perf record` or another profiler to capture stacks, `stackcollapse-*` to produce folded stacks, and `flamegraph.pl` to create an SVG. The README shows examples for Linux perf and DTrace and notes that folded input can be filtered with tools such as `grep` before rendering.

The scripts expose options for title, width, frame height, colors, palettes, inverted icicle graphs, flame charts, differential colors, and consistent palette maps.

### 为什么软件包爱好者会关心

FlameGraph is one of the canonical tiny-tools packages: mostly scripts, little ceremony, and huge influence. Package managers distribute it because one checkout provides the reference renderer plus a toolbox of converters for many profiling ecosystems.

Its significance is also cultural. The package gave systems programmers a common visual language for stack-profile data, and the folded-stack interchange format made it easy for unrelated profilers and language runtimes to interoperate.

### 时间线

- 2013: Brendan Gregg gave an early LISA plenary talk on flame graphs.
- 2016: The Flame Graph article was published in ACM Queue and Communications of the ACM.
- 2017: Gregg presented an updated USENIX ATC talk, Visualizing Performance with Flame Graphs.
- 2020s: Official site reports over 100 implementations and broad support in commercial profilers.

### Related projects

- d3-flame-graph is identified by the official site as a widely used interactive d3 implementation.
- FlameScope is linked from the official site for time-range-oriented flame graph analysis.
- Linux perf, DTrace, SystemTap, Xcode Instruments, VTune, jstack, and Go pprof are among the profiler ecosystems supported by converter scripts.

### 来源

- <https://github.com/brendangregg/FlameGraph>
- <https://raw.githubusercontent.com/brendangregg/FlameGraph/master/README.md>
- <https://www.brendangregg.com/flamegraphs.html>


## 安全说明

narrow executable package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- narrow executable package without higher-risk signals

## 其他软件包管理器记录

- Nix - flamegraph: normalized package name match | nixpkgs package indexes: pkgs/by-name/fl/flamegraph/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- dnf - flamegraph - 1.0-24.20241020git41fee1f.fc45: normalized package name match | Fedora Rawhide package metadata: flamegraph from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Stack trace visualizer | http://www.brendangregg.com/flamegraphs.html
- dnf - flamegraph-demos - 1.0-24.20241020git41fee1f.fc45: normalized package name match | Fedora Rawhide package metadata: flamegraph-demos from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Demos of graphs produced by flamegraph | http://www.brendangregg.com/flamegraphs.html
- dnf - flamegraph-stackcollapse - 1.0-24.20241020git41fee1f.fc45: normalized package name match | Fedora Rawhide package metadata: flamegraph-stackcollapse from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Stack collapsers and support scripts | http://www.brendangregg.com/flamegraphs.html
- dnf - flamegraph-stackcollapse-perf - 1.0-24.20241020git41fee1f.fc45: normalized package name match | Fedora Rawhide package metadata: flamegraph-stackcollapse-perf from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Stack collapser for perf output | http://www.brendangregg.com/flamegraphs.html
- dnf - flamegraph-stackcollapse-php - 1.0-24.20241020git41fee1f.fc45: normalized package name match | Fedora Rawhide package metadata: flamegraph-stackcollapse-php from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Stack collapser for PHP | http://www.brendangregg.com/flamegraphs.html
- MacPorts - flamegraph: normalized package name match | MacPorts ports tree: devel/flamegraph/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/flamegraph.yml](https://github.com/mxcl/pkgdb/blob/main/combined/flamegraph.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
