创建HPC应用任务
功能描述
HPC应用分析通过采集系统的PMU事件并配合采集面向OpenMP和MPI应用的关键指标,帮助用户精准获得Parallel region及Barrier-to-Barrier的串行及并行时间、校准的2层微架构指标、指令分布及L3的利用率和内存带宽等信息。
采集OpenMP数据时,将开启内核参数/proc/sys/kernel/kptr_restrict和/proc/sys/kernel/perf_event_paranoid,以便采集call graph数据和pmu事件;当采集结束后会将内核参数恢复原值。
操作实践可参见代码样例。
前提条件
- 不存在“离线”状态的节点。
- HPC应用分析只支持Kunpeng 920 CPU的物理服务器上使用,且HPC应用任务中Top-Down和DRAM带宽数据需要操作系统内核4.19及以上或patched openEuler 4.14内核及以上。
- Ubuntu系统中HPC应用分析任务数据采集可能会失败,详情请参见Ubuntu系统HPC应用分析任务数据采集失败;其中Ubuntu 20.04.1暂不支持HPC应用分析任务。
- 若mpirun类型为mpich,需将libmpi.so.12所在路径添加到LD_LIBRARY_PATH中,一般为mpich安装路径的lib文件夹。
- 环境mpi(openmpi/mpich)需使能C/C++/Fortran三种语言,以openmpi使用GCC编译器为例:--enable-mpi-compatibility CC=gcc CXX=g++ FC=gfortran。
创建HPC应用分析任务
- 单击系统性能分析后面的。
选择“通用分析”,打开新建任务页面。
- 参考“任务管理”和表2配置任务参数。创建HPC应用分析任务,如图1所示。
表2 新建HPC应用分析任务参数说明 参数
说明
任务名称
输入分析任务的名称。名称需要满足如下要求:
- 只能由中文、字母、数字和下划线组成。
- 长度为1~64个字符。
选择节点
选择需要分析的节点;只有一个节点时默认勾选,最多支持10个节点。仅采集模式为“OpenMP模式”时需配置。
分析对象
选择“应用”。当前仅支持“应用”。
模式
选择“Launch application”,当前仅支持“Launch application”。
分析对象选择“应用”时需配置此参数。
应用路径
输入待分析应用的绝对路径。例如分析保存在“/home/test”目录下的“loop_test”应用,则输入:/home/test/loop_test。
说明:- 默认分析“/opt/”或者“/home/”目录下的应用,管理员用户可在首页右上方的“>工具设置>系统性能分析>系统设置”中,手动配置“应用程序路径配置”,路径之间采用分号分隔。仅管理员用户可修改,普通用户只有查看权限。
- 应用程序路径建议配置为 “/home”、“/opt”等,请不要配置为“/”、“/dev”、“/sys”、“/boot”等系统目录,否则可能导致系统异常。
- 对于保存应用的目录,系统性能分析工具程序的操作系统运行用户(devkitworker1)对于待分析的应用需要有可读可执行权限。
- 多节点场景下,打开“配置指定节点参数”选项可单独配置各节点的该参数。
应用参数(可选)
输入应用参数,请根据实际应用场景填写。
说明:打开“配置指定节点参数”时各节点可单独配置该参数。
应用运行用户(可选)
运行应用的操作系统用户信息。应用默认运行在工具内置devkitworker1用户下;如果应用运行对用户有依赖,需打开选项配置对应的用户密码后在对应用户下执行。
采集模式为“OpenMP模式”时可配置,默认关闭。
用户名
输入拉起应用的系统用户。
“应用运行用户”选项打开时需配置。
密码
输入用户的密码。
“应用运行用户”选项打开时需配置。
分析类型
选择“OpenMP/MPI分析”。
采样时长(s)
设置采样的时间。默认为300秒,采样模式选“Detail模式”时取值范围1~600秒,采样模式选“Summary模式”时取值范围1~1800秒。如超过范围会有提示并自动失焦后回填。
延迟采样时长(s)
用于指定时间后执行分析,可以忽略程序的启动流程分析或用于采集程序热身,消除环境检测等带来的采集延迟。默认为0秒,取值范围0~900秒。如超过范围会有提示并自动失焦后回填。
配置指定节点参数(可选)
根据需求配置指定节点参数;如无需单独配置各节点参数,全部节点都将以当前配置参数执行。
采集模式选择“OpenMP模式”,且在有多个节点时可配置此参数。
采集模式
选择采集类型。可选择以下两种:
- OpenMP模式
- MPI/MPI+OpenMP混合模式
MPI Only(可选)
仅采集MPI相关数据,不采集OpenMP数据.
默认关闭,采集模式选择“MPI/MPI+OpenMP混合模式”时可在“高级配置”配置。
运行mpirun节点
选择运行MPIRUN的节点。
采集模式选择“MPI/MPI+OpenMP混合模式”时需要配置此参数。
共享目录
设置分析共享目录。采集模式选择“MPI/MPI+OpenMP混合模式”时需要配置此参数。
支持共享目录在/opt/或/home/或/mysharedir/下,配置路径请联系管理员。
说明:共享目录的权限请合理配置,避免因权限过大造成网络不安全。
集群检查账户
设置运行用户。默认为mpirun运行用户,可选“root用户”。
说明:使用root用户执行集群检查需要保证集群中root已经配置好免密登录。
集群环境节点重启后,需要使用root用户完成集群检查,否则perf相关采集配置不支持普通用户下执行mpirun。
root用户密码
输入root用户的密码。
采集模式选择“MPI/MPI+OpenMP混合模式”,集群检查账户选择“root用户”时需配置。
mpirun参数(可选)
设置MPI环境变量-x的参数。
采集模式选择“MPI/MPI+OpenMP混合模式”时可配置此参数。
说明:参数中需明确指定任务节点(如--hostfile),仅使用-np参数将使任务随机发至节点,导致集群检查和mpi运行环境不一致,造成任务失败。
mpirun脚本所在路径
配置MPI命令所在路径。
采集模式选择“MPI/MPI+OpenMP混合模式”时需配置此参数。
rankfile(可选)
上传rank配置文件。文件内容格式如:rank <N>=<主机名> slot=<slot list>。
采集模式选择“MPI/MPI+OpenMP混合模式”时可选配置此参数。
分析模式
配置分析模式,默认为统计分析,可选“统计分析”和“精细化分析”。
说明:参与mpi的多个节点需已配置ssh免密,如果未配置,请针对运行mpirun的用户配置ssh免密。
采集系统性能(可选)
配置是否采集系统性能,默认不勾选。
采集模式选择“MPI/MPI+OpenMP混合模式”,分析模式选择“精细化分析”时可在“高级配置”中可配置。
采集critical path(可选)
配置是否采集critical path,默认关闭。
采集模式选择“MPI/MPI+OpenMP混合模式”,分析模式选择“精细化分析”时可在“高级配置”中可配置。
采样模式
配置数据采集模式,默认为“Detail模式”。分析模式为“统计分析”时需配置。
- Summary模式:采集基础指标,采集分析开销较小。
- Detail模式:采集热点函数及详细指标,采集分析开销较大。
统计更多调用栈信息(可选)
配置是否采集callstack和Top-Down数据。默认关闭,分析模式选择“精细化分析”时在“高级配置”中可配置。
任务时间
配置任务是否立即执行,默认选择“立即执行”,可选“立即执行”和“预约定时启动”。
选择“预约定时启动”时,需配置“采集方式”、“采集时间”和“采集日期”。
周期采集:该任务在采集周期内每天生效一次;周期采集需配置“采集时间”和“采集日期”。
单次采集:该任务只生效一次;单次采集需配置“采集日期和时间”。
说明:- 单个用户最多可创建20个预约任务。
- 新创建的预约任务会出现在右上角“>工具设置>系统性能分析”中的“预约任务”列表中,可在“预约任务”列表中查看、修改和删除(可批量删除)预约任务。
- 预约任务暂不支持重启,且预约任务暂时不支持采集模式为MPI/MPI+OpenMP混合模式的任务。
- 单击“确认”完成分析任务的创建。
单击任务名称后面对应的图标可以执行如下操作:
- :取消分析任务,取消分析任务后,已采集的信息会被删除;或开始分析,开始分析将中断当前采集阶段,使用已采集数据进行分析。
- :重启分析任务,可修改任务参数配置并重新启动分析任务,取消任务或任务失败时可使用。
- :删除分析任务,删除分析任务会将该分析任务下的数据都删除,请谨慎操作。
- :再次分析任务,自动命名任务并重新启动分析任务。
- :修改任务或报告名称,可修改对应任务或报告名称(报告名称规则同任务名称一致)。