---
title: 创建Miss事件分析任务
description: "Miss事件分析基于ARM SPE（Statistical Profiling Extension）的能力实现。SPE针对指令进行采样，同时记录一些触发事件的信息，包括精确的PC指针信息。利用SPE能力可以对业务进行LLC Miss，TLB Miss，Remote Access，Long Latency Load等Miss类事件分析，并精确的关联到造成该事件的代码。用户可以有针对性地修改自己的程序，降低Miss事件发生的几率，提高程序处理性能。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevkithistory/devkit_24/usermanual/devkit-hypertuner-074.html
sourcePath: /source/zh/kunpengdevkithistory/devkit_24/usermanual/devkit-hypertuner-074.html
indexId: 4c0d6fcdb53988a296ec7045bfdafd2cc0dc9254785d8b55bedb0c29fae5d56b79
---
# 创建Miss事件分析任务

#### 功能描述

Miss事件分析基于ARM SPE（Statistical Profiling Extension）的能力实现。SPE针对指令进行采样，同时记录一些触发事件的信息，包括精确的PC指针信息。利用SPE能力可以对业务进行LLC Miss，TLB Miss，Remote Access，Long Latency Load等Miss类事件分析，并精确的关联到造成该事件的代码。用户可以有针对性地修改自己的程序，降低Miss事件发生的几率，提高程序处理性能。


#### 前提条件

- 当前不存在“离线”状态的节点。
- Miss事件统计支持openEuler 20.x及以上的操作系统，以及基于openEuler研发的操作系统，并且配置SPE（Statistical Profiling Extension）环境，详细步骤请参见  配置SPE环境
。
- Miss事件统计暂不支持虚拟机和容器环境。
  以下修改需具有root权限。 如果Paranoid配置不符，请将Paranoid变量更改为-1，可使用命令： 1 echo -1 > /proc/sys/kernel/perf_event_paranoid 如果显示“任务采集失败，操作系统性能监视器未开启”，可使用命令开启系统性能监视器。 1 echo 0 > /proc/sys/kernel/nmi_watchdog


#### 创建Miss事件分析任务

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

2. 参考“任务管理”和表1配置任务参数。
  新建Miss事件分析任务，如图1所示。 图1 新建Miss事件分析任务 表1 新建Miss事件分析任务参数说明 参数 说明 任务名称 输入分析任务的名称。名称需要满足如下要求： 只能由中文、字母、数字和下划线组成 长度为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 程序名称查询。 打开“配置指定节点参数”时各节点可单独配置该参数。 分析类型 选择“访存分析”。 访存分析类型 选择“Miss事件分析”。 采样时长 (s) 设置采样的时长。默认为5秒。取值范围1~300秒。 采样间隔 (指令数) 设置采样间隔。默认为8192，取值范围1024~2^32-1；在“高级配置”中需配置。 延迟采样时长 (s)（可选） 设置延迟采样时长。默认为1秒，取值范围0~299秒，且需小于采样时长；在“高级配置”中可配置。 说明： 用于指定时间后执行分析，可以忽略程序的启动流程分析或者用于采集程序热身，消除环境检测等带来的采集延迟。 指标类型（可选） 选择指标类型。在“高级配置”中可配置，可选择： LLC Miss：内存请求在最后一级cache中未命中的次数。 TLB Miss：CPU在内存访问或取址过程中，在tlb中没有找到虚拟地址到物理地址映射次数。 Remote Access：跨CPU访问远程DRAM的次数。 Long Latency Load：跨CPU访问远程DRAM，并且访问时延超过设定的最小时延的次数。 最小延迟 (时钟周期) 设置最小延迟。默认为100，取值范围1~4095。 说明： 当“指标类型”选择“Long Latency Load”时显示该参数。 待采样CPU核（可选） 输入CPU核编号；在“高级配置”中可配置。 说明： 该参数针对某些CPU核进行性能分析的场景，如需要观察某应用程序在某个CPU核上的性能数据，需要在此输入对应的CPU核，取值范围是0~（服务器总CPU核数 - 1）。举例：如16核CPU的服务器，可以输入“0,1,2,10”，表示针对CPU的第0、1、2、10核进行性能数据采集和分析。 打开“配置指定节点参数”时各节点可单独配置该参数。 采样范围（可选） 选择采样范围。默认为“所有”；在“高级配置”中可配置；可选择： 所有：采集应用层和OS内核的性能数据 用户态：采集应用层的性能数据 内核态：采集OS内核的性能数据 C/C++源文件目录 输入C/C++源文件工程目录。 须知： 该应用的源码请务必符合通用编程规范，否则分析结果中热点函数的源码可能无法正常显示。 说明： 当开发者需要观察源代码和汇编指令映射后的性能数据时，该参数用来导入对应应用程序的源代码。 打开“配置指定节点参数”时各节点可单独配置该参数。 任务时间 配置任务是否立即执行，默认选择“立即执行”，可选“立即执行”和“预约定时启动”；“高级配置”中需配置。 选择“预约定时启动”时，需配置“采集方式”、“采集时间”和“采集日期”。 周期采集：该任务在采集周期内每天生效一次；周期采集需配置“采集时间”和“采集日期”。 单次采集：该任务只生效一次；单次采集需配置“采集日期和时间”。 说明： 单个用户最多可创建20个预约任务。 新创建的预约任务会出现在右上角“>工具设置>系统性能分析”中的“预约任务”列表中，可在“预约任务”列表中查看、修改和删除（可批量删除）预约任务。 预约任务暂不支持重启，有预约的任务暂无重启按钮。

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

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