堆坍塌-ghc以下为:将GHC prof文件折叠到flamegraph输入中的程序

[通用公共照明,剖析,程序][建议标签]

将GHC prof文件折叠到flamegraph输入中的程序尽管其他包具有类似功能(不包括NIH综合征),但该包存在的原因归结为:

  • 它只做一件事(堆栈折叠),所以用户可以自行安装flamegraph脚本、传递选项等(在我看来,这并不是一个限制,相反),

  • 输出控制:注释(颜色配置文件)、使用源位置从配置的模块集扩展跟踪或切换限定名称,

  • 精确的刻度和/或字节-第页报告,

  • 它很快

基本用法

可视化记号

如果您有详细的prof文件(-P(P)RTS选项)

stackcollapse ghc专业文件|火焰图.pl--标题“示例”--副标题“时间”--计数名称tick>path_to_svg

如果您有一个标准的prof文件(-第页RTS选项)

stackcollapse-ghc-p prof_file|flamegraph.pl--title“示例”--subtitle“时间”--countname ticks>path_to_svg

可视化分配

如果您有详细的prof文件(-P(P)RTS选项)

stackcollapse-ghc--alloc prof_file|flamegraph.pl--title“示例”--subtitle“已分配的字节”--countname Bytes>path_to_svg

如果您有一个标准的prof文件(-第页RTS选项)

stackcollapse-ghc--alloc-p prof_file|flamegraph.pl--title“示例”--subtitle“已分配的字节”--countname Bytes>path_to_svg

查看完整信息自述文件了解详细信息。


[跳到自述]

下载

注意:此软件包具有元数据修订在阴谋集团的描述中比tarball中包含的更新。要打开包含修订的包,请使用“cabal-get”。

维修人员角落

包装维护人员

对于包维护者和黑客托管者

候选人

版本[RSS(RSS)] 0.0.1,0.0.1.1,0.0.1.2,0.0.1.3,0.0.1.4
更改日志 CHANGELOG.md公司
依赖关系 基础(>=4.12.0.0 && <4.16),字节删除(>=0.10.8),容器(>=0.6.0.1),额外的,折叠(>=1.4.6 && <1.5),递归模式(>=5.2 && <5.3),玫瑰拉链(==0.2),安全的(>=0.3 && <0.4),文本(>=1.2.3.0),变压器(>=0.5.6 && <0.5.7)[详细信息]
许可证 仅GPL-3.0
版权 2020-2021年马尔辛Rze罗兹尼基
作者 马金·雷泽·尼基(Marcin Rzeźnicki)
维护人员 马金·雷泽·尼基(Marcin Rzeźnicki)<marcin.rzeznicki@gmail.com>
修订过的 第1次修订制造商扎兹尼克2021-10-10T19:51:49 Z
类别 分析
主页 https://github.com/marcin-rzeznicki/stackcollapse-ghc
Bug跟踪器 https://github.com/marcin-rzeznicki/stackcollapse-ghc/issues(https://github.com/marcin)
源回购 头部:git克隆https://github.com/marcin-rzeznicki/stackcollapse-ghc.git网址
已上传 通过扎兹尼克2021-05-10T01:35:12Z
分配
可执行程序 堆叠折叠ghc
下载 总计955人(过去30天内有12人)
评级 2.0(票数:1)[估算人贝叶斯平均]
您的评分
  • λ
  • λ
  • λ
状态 文档不可用[生成日志]
上次成功报告时间:2021-05-10[所有3个报告]

stackcollapse-ghc-0.01.4自述文件

[返回包描述]

堆坍塌-ghc

生成状态 黑客攻击 堆叠Lts 夜间堆叠 仅GPL-3.0许可证

将GHC prof文件折叠到flamegraph输入中的程序

动机

尽管有其他功能类似的软件包(不包括NIH综合征),但该软件包仍然存在的原因归结为:

  • 它只做一件事(堆栈折叠),所以用户可以自行安装flamegraph脚本、传递选项等(在我看来,这并不是一个限制,相反),
  • 输出控制:注释(颜色配置文件)、使用源位置从配置的模块集扩展跟踪或切换限定名称,
  • 精确的刻度和/或字节-第页报告,
  • 它很快

目录

基本用法

(以下所有示例都假设您已安装火焰记录仪在您的道路上)

可视化记号

如果您有详细的prof文件(-P(P)RTS选项)

stackcollapse ghc专业文件|火焰图.pl--标题“示例”--副标题“时间”--计数名称tick>path_to_svg

如果您有一个标准的prof文件(-第页RTS选项)

stackcollapse-ghc-p prof_file|flamegraph.pl--title“示例”--subtitle“时间”--countname ticks>path_to_svg

滴答声

可视化分配

如果您有详细的prof文件(-P(P)RTS选项)

stackcollapse-ghc--alloc prof_file|flamegraph.pl--title“示例”--subtitle“已分配的字节”--countname Bytes>path_to_svg

如果您有一个标准的prof文件(-第页RTS选项)

stackcollapse-ghc--alloc-p prof_file|flamegraph.pl--title“示例”--subtitle“已分配的字节”--countname Bytes>path_to_svg

字节

食谱

为模块使用不同的颜色

开箱即用。你只需要告诉程序哪些模块是“你的”(默认情况下,它只假设主要)并将所需的颜色方案传递给flamegraph脚本

stackcollapse-ghc-u Example prof_file|flamegraph.pl--title“带颜色的示例”--subtitle“时间”--countname ticks--color java>path_to_svg

(来自模块的轨迹在此调色板下为绿色)

Java颜色

或者您可以使用微机托盘跟踪分配

stackcollapse-ghc-u Example--alloc-p prof_file|flamegraph.pl--title“带颜色的示例”--subtitle“分配的字节”--countname字节--color mem>path_to_svg

MemColor(内存颜色)

这是通过使用一个名为注释.堆坍塌-ghc添加注释_【j】到中模块的跟踪-u个,_[一]CAF公司_[克]到“内核”模块,例如GHC公司系统

关闭限定名

您可能想通过关闭某些模块的限定名称来缓和火焰图中的视觉混乱。您可以使用-u个此选项与颜色托盘示例中的选项相同。来自您传入的模块的痕迹-u个默认情况下将具有不合格的名称

stackcollapse ghc-u示例-p专业文件|火焰图.pl--标题“示例”--副标题“时间”--计数名称tick>path_to_svg

用户模块

如果你想使用视觉指示保留限定名,您可以使用以下选项

stackcollapse-ghc-Q-u Example-p prof_file|flamegraph.pl--title‘Example’--subtitle‘Time’--countname ticks--color java>path_to_svg

添加源位置

如果您想查看生成的火焰图上痕迹的来源,可以通过组合-u个用选项标记要包含位置的模块-秒

stackcollapse-ghc-s-u Example prof_file|flamegraph.pl--title“带源的示例”--subtitle“时间”--countname ticks>path_to_svg

用户来源

或者,您可以简单地将其包含在所有记录道中(有或无-u个取决于您是否需要它来做其他事情,例如颜色或限定名)

stackcollapse-ghc-S prof_file|flamegraph.pl--title“带源的示例”--subtitle“时间”--countname ticks>path_to_svg

所有来源

“反向”火焰图

有时,将函数放在底部,将其调用者放在上面是有意义的。这种模式称为“反向”火焰图。你可以用堆坍塌-ghc(实际工作由火焰记录仪脚本)

stackcollapse-ghc prof_file|flamegraph.pl--reverse--title'reverse'--countname ticks>path_to_svg

反向

所有选项

用法:stackcollapse-ghc[OPTIONS]FILE选项:-P处理详细的prof文件(“-P”或“-pa”选项)(默认)-p处理标准prof文件(“-p”选项)-u module_name--user-module=模块名称用户模块的名称(可以重复添加多个模块)。匹配整个“层次结构”,因此`MyModule`匹配`MyModule\以及`MyModule。内部`-t—时间相对于时间折叠(默认)-a—分配相对于分配的折叠-S将源位置附加到每个函数名-s将源位置附加到用户模块中定义的函数--no-source不附加源位置(默认)-Q始终使用限定的函数名--no-qualified不使用限定的函数名-q对用户模块中未定义的函数使用限定名(默认)-A—注释,—annot向输出添加注释(j—用户模块,k—GHC和系统,i—CAF)--无注释,--无注释不向输出添加注释

安装

您可以从安装黑客攻击堆叠通过使用其中之一阴谋集团以下为:

cabal v2-更新cabal v2-失速堆叠折叠-ghc

堆栈

堆栈安装stackcollapse-ghc