功率配置文件
可用的功率配置文件及其特性
best_effort- 平衡NN和CPU任务,表现良好
- 产生较高的推理帧率
- 在大多数情况下,CPU性能也比
sustained_nn_heavy更高
sustained_nn_heavy- 优先保证每秒一致的NN推理次数
- 通常产生最高的帧率
- 代价是CPU效率降低,在压力下会明显下降
sustained_cpu_heavy- 帧率最低,尤其是对于NN密集型任务
- 作为交换,提供出色的CPU效率,适用于CPU密集型或多任务应用
设置功率配置文件
agentconfd切换功率配置文件:Command Line
1agentconfd power-switch --profile best_effortbest_effort替换为任何受支持的配置文件。功率配置文件基准测试
stress-ng工具以100%的压力加载CPU,模拟高负载场景。基准测试结果(满CPU负载下)
| 模型 | best_effort 帧率 vs Bogo运算/秒 | sustained_cpu_heavy 帧率 vs Bogo运算/秒 | sustained_nn_heavy 帧率 vs Bogo运算/秒 |
|---|---|---|---|
| yolov8-instance-segmentation-large | 149.17fps 119.62ops/s | 57.83fps 119.41ops/s | 150.62fps 57.5ops/s |
| yolov10-nano | 657.06fps 85.75ops/s | 238.3fps 118.88ops/s | 655.44fps 58.86ops/s |
| yolo-world-l | 71.82fps 90.59ops/s | 27.57fps 119.09ops/s | 74.56fps 50.58ops/s |
| scrfd-face-detection | 380.85fps 89.02ops/s | 131.42fps 119.7ops/s | 381.94fps 49.46ops/s |
| yolov8-large-pose-estimation | 171.96fps 92.96ops/s | 65.36fps 119.36ops/s | 173.06fps 52.76ops/s |
“Bogo运算/秒 (usr+sys)”测量的是什么?
bogo运算/秒 = 总bogo运算 / (用户时间 + 系统时间)- 值越高 = CPU执行效率越高
- 通过 stress-ng 测量
- 用于比较功率配置文件对CPU资源施加的压力大小
测量精度
- 帧率(Frames Per Second) 值使用
modelconverter benchmark工具收集,存在大约±10%的误差范围。 - CPU效率(bogo运算/秒) 使用
stress-ng在用户+系统时间下的输出进行测量。但重要的是,这些数字仅作为观察参考,并非精确的性能指标。