查看分析结果
前提条件
已创建HPC应用分析任务,并且成功完成分析。
查看分析结果
- 在左侧“系统性能分析”区域,单击指定分析任务名称。
展开节点列表。
- 单击节点名称查看分析结果。
- 单击节点名称默认打开“总览 ”页签,如图 总览所示,界面参数描述如表 总览参数说明所示。
可单击优化建议下“Know-how”或右下方按钮参见调优操作。
表1 总览参数说明 参数
说明
执行时间
显示应用程序运行时间。
串行时间
显示应用程序串行运行的时间。
并行时间
显示应用程序并行运行的时间。
不平衡时间
显示应用程序不平衡的运行时间。
CPU使用率
显示CPU使用率(相对于OpenMP运行的比率)。
OpenMP Team使用率
显示OpenMP Team的使用率。
函数
显示调用函数。
模块
显示调用模块。
CPU Time(s)
显示CPU使用时间。
Inst Retired
显示执行的指令数。
Parallel region
显示并行区域。
Potential Gain(s)
显示实际时长和理论时长的差异。
不平衡比例(%)
显示应用程序不平衡的运行比率。
平均时间(ms)
显示平均的运行时间。
CPI 显示CPU cycles/Retired instruction的比值,表示每一条指令消耗的时钟周期。
Effective使用率
显示线程有效工作所占CPU利用率。
Spinning
显示线程等待spinlock所占CPU利用率。
Overhead
显示其余overhead所占CPU利用率。
Instruction Retired
显示执行的指令数。
MPI Wait Rate
显示消耗在MPI阻塞函数上的时间百分比。
Communication
显示集群通信在总通信的占比。
Point to point
显示消耗在点对点通信函数上的时间百分比。
Collective
显示消耗在MPI收集函数上的时间百分比。
Synchronization
显示消耗在同步函数上的时间百分比。
表2 Hotspots区域参数说明 参数
说明
分组方式
默认为“function”选项,还可选“module”、“parallel-region”和“barrier-to-barrier-segment”。
function
显示调用函数。
module
显示调用模块。
parallel-region
显示并行区域
barrier-to-barrier-segment
显示特殊的独立运行区段。
loop
显示loop数据,仅分组方式勾选“function”时显示。
CPU(%)
显示CPU利用率。
CPU(s)
显示CPU时间。
Spin(s)
显示等待spinlock的CPU时间。
Overhead(s)
显示其余overhead所占CPU时间。
CPI
显示CPU cycles/Retired instruction的比值,表示每一条指令消耗的时钟周期。
Ret(%)
显示INST_RETIRED / (4 * CPU_CYCLES), 该指标用来表示CPU微架构执行效率。
Back(%)
显示由于core/memory等资源缺乏导致CPU流水线执行停顿的占比。
Mem(%)
显示由于内存访问延迟导致的CPU流水线执行停顿的占比。
L1(%)
显示由于L1 cache命中导致的CPU流水线执行停顿的占比。
L2(%)
显示由于L2 cache命中导致的CPU流水线执行停顿的占比。
L3/M(%)
显示由于L2 cache未命中导致的CPU流水线执行停顿的占比。
Core(%)
显示由于正在执行指令导致的CPU流水线执行停顿的占比。
SIMD(%)
显示SIMD指令的占比。
Front(%)
显示由于前端组件原因导致的CPU流水线执行停顿的占比。
Spec(%)
显示由于分支预测执行导致的CPU流水线执行停顿的占比。
Instr
显示指令数。
表3 内存带宽区域参数说明 参数
说明
内存带宽
平均DRAM带宽
显示平均DRAM带宽。
读带宽
显示平均读带宽。
写带宽
显示平均写带宽。
Socket内的带宽
显示Socket内的带宽。
跨Socket的带宽
显示跨Socket的带宽。
L3 By-Pass比率
显示L3 By-Pass比率。
L3 miss比率
显示L3 miss的比率。
L3使用效率
显示L3集群使用效率。
指令分布(鼠标悬停于参数旁边的问号上可查看详细信息)
表4 HPC Top-Down及PMU事件区域参数说明 参数
说明
HPC Top-Down
事件名称
显示Top-Down事件名称。
事件比例
显示Top-Down事件比例。
原始PMU事件计数
事件
显示PMU事件名称。
计数
显示PMU事件数量。
表5 MPI运行时指标 参数
说明
分组方式
显示筛选类型,默认选中“function”,还可选择“send-type”、“recv-type”、“mpi-comm”、“caller”、“send-size”和“recv-size”。
function
显示调用函数。
MPI Rank
显示逻辑工作单元。
Wait Rate(%)
显示消耗在MPI阻塞函数上的时间百分比。
P2P Comm(%)
显示消耗在MPI点对点通信函数上的时间百分比。
Coll Comm(%)
显示消耗在MPI收集函数上的时间百分比。
Sync(%)
显示消耗在MPI同步函数上的时间百分比。
Single I/O(%)
显示消耗在MPI_File_read,MPI_File_write函数上的时间百分比。
Coll I/O(%)
显示消耗在MPI_File_read_all,MPI_File_write_all函数上的时间百分比。
Avg Time
显示平均时延。
Call Count
显示调用次数。
Data Size(bytes)
显示传输数据大小。
Send data type
显示发送数据类型。
Recv data type
显示接收数据类型
Sent
显示发送数据的工作单元。
Received
显示接受数据的工作单元。
表6 OpenMP运行时指标 参数
说明
Parallel region
显示并行区域。
Barrier-to-barrier segment
显示特殊的独立运行区段。
Potential Gain(s)
显示理想和实际的时间差。
Elapsed Time(s)
显示运行在并行区的时间。
Imbalance(s)
显示等待最后一个线程到达并行区出口的时间。
Imb(%)
显示不平衡时间占执行时间的比率。
CPU Util(%)
显示运行在并行区的CPU利用率。
Avg(ms)
显示平均时延。
Count
显示调用次数。
Lock Cont(s)
显示工作线程在消耗 CPU 资源的锁上的 CPU 时间。
Creation(s)
显示并行工作安排的开销。
Scheduling(s)
显示调度时间显示OpenMP 运行时调度程序在工作线程的并行工作分配上的开销。
Tasking(s)
显示任务分配时间。
Reduction(s)
显示归约操作时间。
Atomics(s)
显示原子操作时间。
- 单击“MPI节点”页签查看各个节点任务的执行信息,支持20万+核集群中TopN MPI热节点分析,如图2所示,界面参数说明如表7所示。
表7 MPI节点参数说明 参数
说明
节点IP
所有节点的IP地址。
CPU使用率(%)
各节点的CPU使用率。
CPI
CPU cycles/Retired instruction的比值,表示每一条指令消耗的时钟周期。
平均DRAM带宽(GB/S)
平均DRAM带宽。
Socket内的带宽(GB/S)
Socket内的带宽。
跨Socket带宽(GB/S)
跨Socket的带宽。
MPI wait rate
消耗在MPI阻塞函数上的时间百分比。
menused (KB)
各节点已使用的内存。
memfree (KB)
各节点空闲的内存。
rd(KB)/s
每秒从设备读取的带宽。
wr(KB)/s
每秒写入到设备的带宽。
rxkB/s
每秒接收的字节总数,单位为KB。
txkB/s
每秒传输的字节总数,单位为KB。
平均功率(W)
系统功率的平均值。
- “OpenMP timeline”页签如图3所示,参数说明如表8所示。
- 可通过“←”和“→”对线程上下切换;标记关键线程,可拖动上方时间轴查看对应时间区间数据展示,也可通过下拉框筛选关键线程。
- Hot Callstack最多支持10个调用栈显示。
- “MPI timeline”页签如图4所示,参数说明如表9所示。
RDMA和共享存储数据需在任务创建时选择,可单击按钮筛选查看;详情可单击折线图某一时刻查看。
表9 MPI timeline参数说明 参数
说明
rank基础信息
rank ID
显示选中rank的ID。
开始时间
显示线程某一阶段的开始时间。
持续时间
显示线程某一阶段的持续时间。
CPI
CPU cycles/Retired instruction的比值,表示每一条指令消耗的时钟周期。
Instructions Retired
总指令数。
集群通信类型
显示集群通信的类型。
通信域根
显示通信域根。
通信域名称
显示通信域的名称。
通信数据量
显示通信时发送和接收的数据量。
通信域成员数量
显示当前通信域成员数量。
通信域成员
显示具体通信域成员。
rank调用信息
调用栈
调用栈名称。
调用次数
该调用栈的调用次数。
调用比例(%)
在所有调用栈中的占比。
事件名称
显示Top-Down事件名称。
事件比例(%)
显示Top-Down事件比例。
RDMA信息
节点IP
显示RDMA所在的IP地址。
采集时间
显示当前RDMA数据的采集时间点。
接收
显示当前时间点接收的数据量。
发送
显示当前时间点发送的数据量。
共享存储信息
节点IP
显示共享存储的IP地址。
采集时间
显示当前共享存储数据的采集时间点。
接收
显示当前时间点接收的数据量。
发送
显示当前时间点发送的数据量。
- HPC应用分析任务在分析应用时选中精细化分析,可查看“通信热力图”页签如图5所示。
- 统计对象默认选项Rank to Rank,统计指标默认选项为Data_Size,通信类型默认选项为Point to Point,选择通信域默认选项为第一个。
- 可通过下拉框选择统计对象(可选Node to Node)、统计指标(可选Latency)、通信类型(可选集群通信)和通信域;若统计指标选择“Latency”,则通信类型只能为“Point to Point”。
- (ranki,rankj)对应的数据量为ranki发往rankj的数据加ranki接收自rankj的数据。
- 可在左侧图中使用鼠标框选需要查看的范围;右侧图为左侧框选的详细内容,单击或按钮可放大缩小,也可通过鼠标滑轮控制。
- 选择通信域弹窗中可单击搜索“通信域名称”和“通信域成员”,单击对“对通信域成员”排序,单击“查看详情”可查看通信域信息弹窗。
单击“选择通信域”下拉框可切换和筛选需要查看的通信域信息。
图6 选择通信域
单击“统计对象”换成Node To Node,可查看如图7所示rank信息,主要指标为本地占比、跨DIE占比和跨片占比。
- “TopN低效通信”页签如图8所示,参数说明如表10所示。
选择需要了解的TopN通信占比rank,单击Send或Receive色块可查看rank详情和通信延迟详情。
- 单击“任务信息”页签查看当前节点任务的详细配置信息和采集信息。
如果任务执行失败,“任务信息”界面上会显示任务失败的原因。
如果任务执行成功,但有部分不影响整体的数据采集失败,可查看“异常信息”。
“采集结束原因”可表明当前任务数据采集结束原因,如“到达任务采集时间”和“到达文件采集大小”等。
- 单击节点名称默认打开“总览 ”页签,如图 总览所示,界面参数描述如表 总览参数说明所示。