---
title: 创建热点函数分析任务
description: "支持分析C/C++程序代码识别性能瓶颈，给出对应的Top30热点函数和调用栈详情。通过火焰图展示函数的调用关系，发现优化路径。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevkithistory/devkit_24_t50/usermanual/devkit-hypertuner-089.html
sourcePath: /source/zh/kunpengdevkithistory/devkit_24_t50/usermanual/devkit-hypertuner-089.html
indexId: 562c61def45e50fea7b000c1c3c76e9a0703e87f10d2b9afe1f07fa24ed5224083
---
# 创建热点函数分析任务

#### 功能描述

支持分析C/C++程序代码识别性能瓶颈，给出对应的Top30热点函数和调用栈详情。通过火焰图展示函数的调用关系，发现优化路径。


#### 前提条件

- 不存在“离线”状态的节点。


#### 创建热点函数分析任务

1. 单击系统性能分析后面的。
  选择“通用分析”，打开新建任务页面。

2. 参考“任务管理”和表1配置任务参数。
  新建热点函数分析任务，如图1所示。 图1 新建热点函数分析任务 表1 新建热点函数分析任务参数说明 参数 说明 任务名称 输入分析任务的名称。名称需要满足如下要求： 只能由中文、字母、数字和下划线组成 长度为1~64个字符 选择节点 选择需要分析的节点；只有一个节点时默认勾选，最多支持10个节点。 分析对象 选择“系统”或“应用”。 模式 选择“Launch application”或“Attach to process”。 分析对象选择“应用”时需配置此参数。 应用路径 输入待分析应用的绝对路径。例如分析保存在“/home/test”目录下的“loop_test”应用，则输入：/home/test/loop_test 分析对象选择“应用”，模式选择“Launch application”时需配置此参数。 说明： 默认分析“/opt/”或者“/home/”目录下的应用，管理员用户可在首页右上方的“>工具设置>系统性能分析>系统设置”中，手动配置“应用程序路径配置”，路径之间采用分号分隔。仅管理员用户可修改，普通用户只有查看权限。 应用程序路径建议配置为 “/home”、“/opt”等，请不要配置为“/”、“/dev”、“/sys”、“/boot”等系统目录，否则可能导致系统异常。 对于保存应用的目录，系统性能分析工具程序的操作系统运行用户（devkitworker1）对于待分析的应用需要有可读可执行权限。 多节点场景下，打开“配置指定节点参数”选项可单独配置各节点的该参数。 应用参数（可选） 执行应用需要配置的参数，请根据实际应用场景填写。 分析对象选择“应用”，模式选择“Launch application”时可配置此参数。 说明： 多节点场景下，打开“配置指定节点参数”时各节点可单独配置该参数。 应用运行用户（可选） 运行应用的操作系统用户信息。应用默认运行在工具内置devkitworker1用户下；如果应用运行对用户有依赖，需打开选项配置对应的用户密码后在对应用户下执行。 模式为“Launch application”时可配置，默认关闭。 用户名 输入运行应用的操作系统用户。 “应用运行用户”选项打开时需配置。 密码 输入用户的密码。 “应用运行用户”选项打开时需配置。 进程名称 输入进程名称，进程名称支持输入正则表达式。 分析对象选择“应用”，模式选择“Attach to process”时需配置此参数。 PID 输入要分析的进程的PID，最多输入128个，中间用英文逗号分割。进程名称和PID至少选择一个填写，同时填写时取两者并集进行采集。 分析对象选择“应用”，模式选择“Attach to process”时可配置此参数。 说明： “Attach to process”针对正在运行的应用程序（系统性能分析工具程序的操作系统运行用户（devkitworker1）针对运行的应用程序需要有可读权限），通过关联到运行该应用程序的PID的方式，来实时跟踪和采集该应用程序的性能数据。 进程的PID可执行ps -ef | grep 程序名称查询。 打开“配置指定节点参数”时各节点可单独配置该参数。 分析类型 选择“热点函数分析”。 采样时长 (s) 设置采集的时间，默认为30秒。取值范围1~1800秒。 随着采样时长增加，采集处理可能会因超过采集空间大小而终止，最大支持10GB。采样时长过长，采集处理时将消耗大量资源和时间，请根据任务适度配置。 采集调用栈（s）（可选） 开启选项将采集并展示调用栈数据和火焰图，否则只采集top30热点函数。默认开启。 延迟采样时长（s） 用于指定时间后执行分析，可以忽略程序的启动流程分析或用于采集程序热身，消除环境检测等带来的采集延迟。默认为0秒，取值范围0~900秒。 分析对象选择“应用”，模式选择“Launch application”时在“高级配置”中需配置此参数。 采样频率 (次/秒) 设置每秒采样的次数，默认为100，取值范围1-500；在“高级配置”中需配置此参数。 采样范围（可选） 选择采样范围。默认为“所有”，在“高级配置”中可配置此参数。可选择： 所有：采集应用层和OS内核的性能数据 用户态：采集应用层的性能数据 内核态：采集OS内核的性能数据 待采样CPU核（可选） 输入CPU核编号；在“高级配置”中可配置此参数。 说明： 该参数针对某些CPU核进行性能分析的场景，如需要观察某应用程序在某个CPU核上的性能数据，需要在此输入对应的CPU核，取值范围是0~（服务器总CPU核数 - 1）。举例：如16核CPU的服务器，可以输入“0,1,2,10”，表示针对CPU的第0、1、2、10核进行性能数据采集和分析。 打开“配置指定节点参数”时各节点可单独配置该参数。 C/C++ 源文件目录 配置C/C++源文件工程目录。分析对象选择“应用”时，在“高级配置”中可配置此参数。 任务时间 配置任务是否立即执行，默认选择“立即执行”，可选“立即执行”和“预约定时启动”；“高级配置”中需配置。 选择“预约定时启动”时，需配置“采集方式”、“采集时间”和“采集日期”。 周期采集：该任务在采集周期内每天生效一次；周期采集需配置“采集时间”和“采集日期”。 单次采集：该任务只生效一次；单次采集需配置“采集日期和时间”。 说明： 单个用户最多可创建20个预约任务。 新创建的预约任务会出现在右上角“>工具设置>系统性能分析”中的“预约任务”列表中，可在“预约任务”列表中查看、修改和删除（可批量删除）预约任务。 预约任务暂不支持重启，有预约的任务暂无重启按钮。 当分析的程序进程较多，分析的数据量较大，可能会出现“任务超时失败”的情况。可通过减少“采样时长”或者增大“采样间隔”来避免这种情况的发生。

3. 单击“确认”完成分析任务的创建。
单击任务名称后面对应的图标可以执行如下操作：

  - ：取消分析任务，取消分析任务后，已采集的信息会被删除。
  - ：重启分析任务，可修改任务参数配置并重新启动分析任务，取消任务或任务失败时可使用。
  - ：删除分析任务，删除分析任务会将该分析任务下的数据都删除，请谨慎操作。
  - ：再次分析任务，自动命名任务并重新启动分析任务。
  - ：新建分析任务的对比分析。
  - ：修改任务或报告名称，可修改对应任务或报告名称（报告名称规则同任务名称一致）。

  - ：创建对比分析任务，可生成差分火焰图。
