已合并
【PR】: 补齐tensorflow相关的autofuse融合样例 #1765
zzq创建于 7 天前
【PR】: 补齐tensorflow相关的autofuse融合样例 #1765
已合并
Pull Request已成功合入, 合并人@CANN-robot
(感谢 zzq 的贡献)atomgit-bot
7 天前 评论:
7 天前 评论:
变更摘要
本 PR 旨在补齐 TensorFlow 场景下的 AutoFuse 融合样例,新增两个基于 tensorflow 的 NPU 融合示例脚本:af_tf_eleandbroadcast/test_abs_add_relu.py(abs -> add(broadcast) -> relu)与 af_tf_eleandreduce/test_abs_reducesum.py(abs -> reduce_sum)。两个样例均支持通过 --mode 参数在 TF1(npu_bridge)与 TF2 兼容模式(npu_device.compat)下运行,通过 configure_npu 在 sess_config 上配置 NpuOptimizer(含 use_off_line、graph_run_mode、profiling_mode、profiling_options 等参数)开启推理模式与 profiling,并在执行结束后借助 msprof --export=on 导出新增的 PROF_* profiling 目录,供用户按 example/tensorflow 目录下对应用例文档执行并观察融合结果。
主要改动
- 新增
test_abs_add_relu.py样例: 构建tf.abs->tf.add(含 broadcast 广播)->tf.nn.relu的融合模型,以 float16 输入在 NPU 上执行 100 步并导出 profiling 数据。 - 新增
test_abs_reducesum.py样例: 构建tf.abs->tf.reduce_sum(axis=1)的融合模型,同样以 float16 输入执行 100 步并导出 profiling 数据。 - 双模式运行支持: 两个脚本均通过
--mode(tf1/tf2-compat)选择运行环境,tf1通过import npu_bridge的副作用注册 NPU 算子,tf2-compat通过npu_device.compat.enable_v1()切换到 v1 行为,并相应选用tf.placeholder/tf.ConfigProto或tf.compat.v1版本。 - NPU 配置与 profiling 导出:
configure_npu在sess_config上添加名为NpuOptimizer的自定义优化器(use_off_line=True、graph_run_mode=0、开启profiling_mode并设置profiling_optionsJSON),执行结束后由export_new_profiling对比前后PROF_*目录,对新增目录执行msprof --export=on完成数据导出。


atomgit-bot
7 天前 评论:
7 天前 评论:
7 天前 添加了label:cann-cla/yes
此处折叠了79条消息 查看更多
6 天前 添加了label:lgtm
6 天前 添加了label:approved
6 天前 合入了pull request
Pull Request
描述
补齐tensorflow相关的autofuse融合样例。
变更类型
请选择本次引入的变更类型:
关联的Issue
如何测试
描述测试此变更的步骤和前提条件:
1.根据example/tensorflow目录下对应用例文档执行用例并观察结果
核对清单
其他信息
在此添加任何其他关于本次 PR 的说明。