CPU 分析器
CPU Profiler 显示哪些函数消耗了多少百分比的 CPU 时间。这些信息可以帮助您更好地了解应用程序的执行方式以及资源的具体分配方式。
分析完成后,分析器会在报告中可视化输出数据。
分析器配置
GoLand 提供了两个预定义的 Async Profiler 配置:CPU 分析器和内存分配分析器,您可以在 中找到它们。
这些配置经过调整以提供最准确的结果,因此无需进行任何修改。 但是,如果您仍需要更改设置,请参阅 Async Profiler on GitHub 了解更多信息。
选择分析器配置
在 设置 对话框(Ctrl+Alt+S )中,选择 。
选择一个预定义的 CPU 或内存分析配置,或者通过点击
创建一个新配置。
应用更改并关闭对话框。
运行分析
运行 CPU 分析
请打开 _test.go 文件。
在您想要分析的函数或方法附近,点击沟槽区域中的 运行应用程序 图标
并选择 使用 'CPU Profiler' 运行 <configuration_name>。

阅读分析报告
在 分析器 工具窗口中,收集的数据显示在三个选项卡上: 火焰图、 调用树 和 方法列表。 左侧部分列出了应用程序线程;点击每个线程可以查看更多详细信息。
火焰图
火焰图 选项卡显示函数调用以及每次调用的执行时间百分比。 每个块表示堆栈中的一个函数(一个堆栈帧)。 Y 轴表示堆栈深度,从下到上。 X 轴显示堆栈配置文件,从最消耗 CPU 的函数到最少消耗的函数排序。
阅读火焰图时,请关注最宽的块。 这些块是配置文件中最常出现的函数。
将鼠标悬停在任意块上以查看详细信息:

调用树
调用树 选项卡表示在分析期间采样的程序调用堆栈的信息:
方法名称
总采样时间的百分比(可以切换到父调用视图)
总采样计数
过滤调用的数量
百分比后面的可选数字表示过滤后的调用序列。 点击它以展开此序列。 可以在设置中配置过滤规则。
要配置和过滤调用树视图,请使用 表示设置 按钮()。

方法列表
方法列表 收集分析数据中的所有方法,并按累积采样时间排序。 此列表中的每个项目都有一个回溯树和一个合并被调用者树。
反向跟踪 选项卡显示调用者的层次结构。 使用此视图追踪哪些方法调用了所选方法。 合并被调用者尝试汇总所有被所选方法调用的方法。
