以下是算能(Sophgo)Bmlib 中与 性能分析 相关的核心数据结构的详细说明,涵盖时间统计、硬件利用率追踪、事件记录等关键内容,帮助开发者深入分析计算任务的性能瓶颈。
一、核心数据结构
1. bm_profile_t
(性能分析句柄)
- 定义:
typedef struct bm_profile* bm_profile_t; // 不透明指针,隐藏具体实现
- 功能:
- 表示一个性能分析会话,用于记录任务耗时、内存使用、算子执行时间等数据。
- 通过
bm_profile_create
创建,bm_profile_destroy
销毁。
- 内部可能包含的成员(推测实现):
struct bm_profile { uint64_t start_time; // 分析开始时间(设备时钟,单位:ns) uint64_t end_time