界面介绍
功能说明
在服务化调优过程中,MindStudio Insight工具以时间线(Timeline)的呈现方式,将请求端到端的执行情况平铺在时间轴上,直观体现请求在各个关键阶段的耗时情况以及当下请求的状态信息。通过分析时间线,用户可以快速识别服务化性能瓶颈,并根据问题现象,调整调优策略。
界面展示
- 区域一:工具栏,包含常用快捷按钮,从左至右依次为标记列表、过滤(支持按卡或按泳道过滤展示)、搜索、连线事件、重置缩放(页面复原)和时间轴缩小放大按钮。
- 区域二:图形化展示,左侧显示服务化采集的性能数据,一层级为进程,二层级为请求的各个关键阶段信息,具体泳道信息如表1所示。右侧为时间线视图,逐行对时间线进行图形化展现,包括各关键阶段执行序列和执行时长。
表1 泳道信息 泳道名称
说明
CPU Usage
CPU平均利用率。仅在开启host_system_usage_freq数据采集开关后采集到的数据才会展示该泳道。
Memory Usage
Host侧系统内存使用率。仅在开启host_system_usage_freq数据采集开关后采集到的数据才会展示该泳道。
NPU Usage
NPU内存占用。仅在开启npu_memory_usage_freq数据采集开关后采集到的数据才会展示该泳道。
KVCache
KV Cache剩余量随时间变化图。
BatchSchedule
组batch时间,单位ns。
WAITING
请求转移到WAITING状态的时刻。
PENDING
请求转移到PENDING状态的时刻。
RUNNING
请求转移到RUNNING状态的时刻。
RUNNING2
请求转移到RUNNING2状态的时刻。
SWAPPED
batch进入SWAPPED状态的时刻。
RECOMPUTE
请求转移到RECOMPUTE状态的时刻。
SUSPENDED
batch进入SUSPENDED状态的时刻。
END
请求转移到END状态的时刻。
END_PRE
请求转移到END_PRE状态的时刻。
STOP
batch进入STOP状态的时刻。
PREFILL_HOLD
batch进入PREFILL_HOLD状态的时刻。
http
http请求完整生命周期数据,包含http请求的接收,encode,decode的时间。
batchFrameworkProcessing
组batch数据,包含组batch时间,当前batch的类型(prefill或者decode),请求的rid和迭代次数。
preprocessBatch
IBIS数据下发中给batch添加参数的时间,单位ns。
SerializeExecuteMessage
IBIS数据下发中序列化时间,单位ns。
setInferBuffer
IBIS数据下发中设置buffer时间,单位ns。
grpcWriteToSlave
IBIS数据下发中gRPC读,单位ns。
deserializeExecuteRequestsForInfer
IBIS数据下发中反序列化时间,单位ns。
convertTensorBatchToBackend
IBIS数据下发中request转化时间,单位ns。
getInputMetadata
IBIS数据下发中获取metadata时间,单位ns。
beforemodelExec
模型执行前处理时间,单位ns。
modelExec
模型执行数据,单位ns,包含执行时间,当前batch的类型(prefill或者decode),请求的rid和迭代次数。
instanceExecute
模型实例执行时间,单位ns。
Queue
请求进入队列的时刻。
PDcommunication
PD分离通信时间,单位ns。仅在PD分离场景下存在该泳道。
forward
模型推理前向传播时间,单位ns。
operatorExecute
Python侧模型执行接口时间,单位ns。
processPythonExecResult
数据接收中response转化,序列化以及写入共享内存时间,单位ns。
deserializeExecuteResponse
数据接收中反序列化时间,单位ns。
saveoutAndContinueBatching
数据接收中将response解析为output的时间,单位ns。
continueBatching
数据接收中将请求加入队列的时间,单位ns。
sendExecuteMessage
发送执行信息时间,单位ns。
postprocess
模型推理后处理时间,单位ns。
preprocess
模型推理前处理时间,单位ns。
processBroadcastMessage
通信广播信息时间,单位ns。
sample
采样时间,单位ns。
PullKVCache
PD节点之间的KVCache传输时间,单位ns。仅在PD分离场景下存在该泳道。
CANN
算子执行时间,单位ns。仅在开启acl_task_time数据采集开关后采集到的数据才会展示该泳道。
dpBatch
模型推理过程中各请求对应的dp域信息。
RequestState
模型推理过程中请求状态变化。
- 区域三:数据窗格,统计信息或指令详情信息展示区,选中详情(Slice Detail)为选中单个关键阶段的详细信息、选中列表(Slice List)为泳道选中区域的关键阶段列表信息。

通过观察时间线视图各个层级上的耗时长短、间隙等判断对应的关键阶段是否存在性能问题。