专栏算法工具链J6M测算Bpu显存、Bpu利用率、cpu利用率、内存等指标

J6M测算Bpu显存、Bpu利用率、cpu利用率、内存等指标

已解决
布谷呀2025-09-29
133
22

您好,J6M同时运行8个模型,怎么测试单个模型的资源占用情况,比如:Bpu显存、Bpu利用率、cpu利用率、内存等指标(进程封装好了,没法单独运行单个模型,有工具直接测试hbm也行)

算法工具链
征程6
评论5
0/1000
  • Huanghui
    Lv.5

    通用来讲:

    1. BPU不是显卡,是没有显存概念的。

    2. BPU的利用率可以通过hrut_somstatus查看。

    3. CPU利用率和内存直接通过通用的top或htop看就OK。

    对于特定的业务,你可以参考 【J6工具链部署实用技巧-7】模型设计帧率推理时耗时与带宽分析 - 地平线开发者社区 对hrt_model_exec进修一些修改运行后通过上面的命令查看

    2025-09-30
    1
    1
    • 布谷呀回复Huanghui:

      1. hrut_somstatus这个工具怎么配置,请问deb在哪里

      2. 我现在对某个模型进行压缩,相对比bpu前后负载,帮忙给下统计思路,感谢

      2025-09-30
      0
  • 费小财
    Lv.5
    还可以通过bpu trace
    目前bpu trace功能仅支持离线分析,bpu trace功能需要配合ucp使用,否则无法正确识别模型名称。
    数据抓取
    > tracebox traced &
    > tracebox traced_probes &
    > tracebox perfetto --txt -c ucp_system.cfg -o ucp.pftrace
    在离线生成的cfg配置文件中加入bpu,如果使用ucp,需要添加ucp的配置文件。
    data_sources: { config { name: "linux.sys_stats" sys_stats_config { bputrace_period_ms: 500 } } }
    # ucp cfg data_sources: { config { name: "track_event" track_event_config { enabled_categories: "dnn" } } }
    参考oe包中的使用文档添加环境变量,使用hrt_model_exec执行模型,生成bpu相关trace信息。export HB_UCP_PERFETTO_CONFIG_PATH=ucp_system.json
    export HB_UCP_ENABLE_PERFETTO=true
    hrt_model_exec perf --model_file test.hbm --frame_count 1000 --thread_num 8
    ucp_system.json中的内容:{ "backend": "system" }
    如果想先启动hrt_model_exec运行模型,再采集bpu trace,需要提前使能bpu trace节点。
    echo 0 > /sys/devices/system/bpu/bpu0/trace
    echo 1 > /sys/devices/system/bpu/bpu0/trace
    数据可视化运行navigation.exe程序,用hbperfetto打开trace文件。
    2025-09-30
    1
    16
    • 布谷呀回复费小财:

      您提到的方法有使用指南吗, 使用过 hrt_model_exec在J6M上测过帧率

      2025-09-30
      0
    • 费小财回复布谷呀:

      你能看到底软的对外发布文档或者手册吗

      2025-09-30
      0
    • 布谷呀回复费小财:

      有oe3.2.0,没有其他的了
      2025-09-30
      0
    • 费小财回复布谷呀:

      嗯,那肯呢个看到上面的使用指南了

      2025-09-30
      0
    • 费小财回复布谷呀:

      另外你们的系统版本是什么时候的,bpu的工具还提供了新的sys节点来查看任务的

      2025-09-30
      0
    • 布谷呀回复费小财:
      2025-09-30
      0
    • 费小财回复布谷呀:

      cat /etc/version看看?

      2025-09-30
      0
    • 布谷呀回复费小财:
      2025-09-30
      0
    • 布谷呀回复费小财:

      您知道hrt_ucp_monitor(J6M的内置工具)中的RSS和HBMEM是什么意思吗

      2025-09-30
      0
    • 费小财回复布谷呀:

      RSS 它表示一个进程当前实际驻留在物理内存中的内存大小,不包括被交换到磁盘的部分

      2025-09-30
      0
    • 费小财回复布谷呀:

      Hobot Memory Management(Hbmem)地平线内存管理模块,是一个地平线自研的内存管理软件,用于解决Linux内核无法很好的支持预留内存的管理,以及应用与驱动之间的内存共享的问题

      2025-09-30
      0
    • 布谷呀回复费小财:

      佬,看看这两个问题

      1. hrut_somstatus这个工具怎么配置,请问deb在哪里

      2. 现在J6M运行了很多进程,我现在对A进程的某个模型进行压缩,想对比关于该模型的bpu前后负载,有没有好的思路

      2025-09-30
      0
    • 布谷呀回复费小财:

      您最开始的回复,地平线的 hrt_ucp_monitor可以替代不

      2025-09-30
      0
    • 费小财回复布谷呀:

      这个工具是监控内存的,cpu的利用率应该不行吧,还得通过trace来看的吧

      2025-09-30
      0
    • Huanghui回复布谷呀:

      1. hrut_somstatus不需要安装和配置,刷完底软就有的

      2. 你要对吧BPU前后负责,只要在同样测试条件,对比模型修改之后的负载情况就可以了。

      2025-09-30
      0
    • 费小财回复布谷呀:
      2025-09-30
      0
  • 费小财
    Lv.5

    CPU,内存的话,可以用系统自带的工具,通过对应的线程去查看

    2025-09-30
    0
    0
  • 费小财
    Lv.5

    bpu的方法的话可能需要查找下有没有对应的工具的有这个能力的

    2025-09-30
    0
    0
  • 狗子别怕
    Lv.2
    cpu、内存的使用率:使用top、ps等linux系统指令
    内存大小:cat /proc/meminfo
    bpu使用率:hrut_somstatus
    2025-10-10
    0
    0