云优采集接口(网络训练性能未达预期时的性能分析及精度分析方法)

优采云 发布时间: 2021-09-13 05:01

  云优采集接口(网络训练性能未达预期时的性能分析及精度分析方法)

  概述

  当网络训练性能不符合预期时,可以分析Profiling数据,准确定位系统的软硬件性能瓶颈,提高性能分析效率,通过有针对性的性能,以最低的成本和成本实现业务优化方法 场景的极致性能,目前支持采集的性能数据主要包括:

  大致流程为:ModelArts训练时将采集Profiling数据传输到OBS桶,然后将Profiling数据上传到CANN Toolkit软件包的安装环境进行性能分析。

  

  修改训练脚本启用Profiling data采集

  训练过程默认不是采集Profiling 性能数据。您需要修改训练脚本如下:

  调用os的mkdir接口创建profiling工作目录,用于在ModelArts后台临时存放profiling数据:

  import os

profiling_dir = "/cache/profiling"

os.makedirs(profiling_dir)

  启用分析数据采集。

  如果是手动迁移脚本,请参考Profiling data采集修改训练脚本。

  如果是工具迁移脚本,请参考Profiling data采集修改训练脚本。

  需要注意的是,以上参考章节是裸机场景中的修改示例。在ModelArts场景中,需要指定output为ModelArts后端目录:

  custom_op.parameter_map["profiling_options"].s = tf.compat.as_bytes('{"output":profiling_dir,"task_trace":"on","training_trace":"on","fp_point":"resnet_model/conv2d/Conv2Dresnet_model/batch_normalization/FusedBatchNormV3_Reduce","bp_point":"gradients/AddN_70"}')

  调用 moxing 的 copy_parallel 接口将生成的 profiling 数据传输到 OBS。

  import moxing as mox

mox.file.copy_parallel(profiling_dir, config.train_url)

  其中config.train_url为训练时指定的模型在OBS上的输出路径。

  从 OBS 下载分析数据

  完成上述训练脚本的修改后,在ModelArts上开始训练任务。训练结束后可以在FLAGS.train_url指向的OBS路径上查看Profiling文件夹。

  

  通过Profiling工具进行准确度分析

  您可以将OBS上的profiling数据下载到安装CANN Toolkit软件包的环境中,通过命令行进行性能分析。详情请参考《Profiling Tool 用户指南》。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线