You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从TensorBoard按tf.name_scope获取命名空间维度耗时汇总数据

按name_scope聚合TensorFlow模块耗时的可行方法
  • 方法1:调用TF内置Profiler接口直接输出聚合结果
    无需依赖TensorBoard面板的交互功能,直接在代码中接入原生profiler,即可自动按name_scope维度累加算子耗时,参考实现:
    import tensorflow as tf
    
    # 图模式(TF1.x/TF2.x兼容图模式)参考实现
    from tensorflow.python.profiler import model_analyzer
    from tensorflow.python.profiler import option_builder
    
    profiler = model_analyzer.Profiler(graph=tf.compat.v1.get_default_graph())
    run_options = tf.compat.v1.RunOptions(trace_level=tf.compat.v1.RunOptions.FULL_TRACE)
    run_metadata = tf.compat.v1.RunMetadata()
    # 替换为实际的模型执行调用
    sess.run(target_tensor, options=run_options, run_metadata=run_metadata)
    profiler.add_step(step=0, run_meta=run_metadata)
    
    # 配置统计规则:按name_scope聚合,按耗时排序,统计墙钟时间和调用次数
    stat_options = option_builder.ProfileOptionBuilder(
        option_builder.ProfileOptionBuilder.time_and_memory()
    ).order_by('micros')\
     .account_displayed_op_only(True)\
     .select(['micros', 'occurrence'])\
     .build()
    
    # 直接打印各name_scope的聚合耗时结果
    profiler.profile_name_scope(stat_options)
    
    如果是TF2.x eager模式,可使用tf.profiler.experimental.start(logdir)、tf.profiler.experimental.stop()包裹待统计的代码段,采集完成后调用tf.profiler.experimental.profile(logdir, options)配置按name_scope维度输出统计结果即可。
  • 方法2:自定义解析trace文件做聚合
    你通过tf.summary.trace_export导出的trace为标准Chrome Trace格式JSON文件,可通过简单脚本自行统计:
    1. 加载JSON文件,筛选出cat字段为Op、ph字段为X的算子执行事件
    2. 每个事件的name字段包含完整name_scope路径,按路径分隔符/即可提取事件所属的各层级scope
    3. 按scope分组累加所有事件的dur字段(单位为微秒),即可得到对应模块的总墙钟耗时
  • 方法3:采集完整profiler数据使用TensorBoard聚合面板
    你当前TensorBoard仅显示Trace Viewer和Graph页面,是因为仅导出了基础trace数据,未采集完整profiler采样信息。将手动导出trace的逻辑替换为tf.profiler.experimental.start()/tf.profiler.experimental.stop()包裹待统计代码,重新生成日志后打开TensorBoard,Profile页会自动加载Op Profile面板,支持按name_scope层级展开查看各模块的聚合CPU/GPU总耗时、耗时占比等统计数据。

注意:如果模型使用tf.function编译,需将with tf.name_scope(...)代码块写在被@tf.function装饰的函数内部,避免scope前缀无法正确绑定到编译后的算子,导致聚合结果不准。

内容的提问来源于stack exchange,提问作者Gareth Williams

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 00:39:45