更新时间:2022-11-08 GMT+08:00
分享

查看训练作业资源利用率

如何查看训练作业资源使用详情

用户可以通过资源占用情况窗口查看计算节点的资源使用情况,最多可显示最近三天的数据。在资源占用情况窗口打开时,会定期向后台获取最新的资源使用率数据并刷新。

操作一:如果训练作业使用多个计算节点,可以通过实例名称的下拉框切换节点。

操作二:单击图例“cpuUsage”“gpuMemUsage”“gpuUtil”“memUsage”“npuMemUsage”“npuUtil”、可以添加或取消对应参数的使用情况图。

操作三:鼠标悬浮在图片上的时间节点,可查看对应时间节点的占用率情况。

图1 资源占用情况
表1 参数说明

参数

说明

cpuUsage

cpu使用率。

gpuMemUsage

gpu内存使用率。

gpuUtil

gpu使用情况。

memUsage

内存使用率。

npuMemUsage

npu内存使用率。

npuUtil

npu使用情况。

如何判断训练作业资源利用率高低

在训练管理的训练作业列表页可以查看作业资源利用率情况。当作业的GPU/NPU的平均利用率低于50%时,在训练作业列表中会进行告警提示。

图2 作业列表显示作业资源利用率情况

此处的作业资源利用率只涉及GPU和NPU资源。作业的GPU/NPU平均利用率计算方法:将作业的各个GPU/NPU加速卡每个时间点的利用率汇总取平均值。如果作业使用多个计算节点,则将各个计算节点上的利用率汇总得到单个作业的平均利用率。

如何提高训练作业资源利用率

  • 适当增大batch_size:较大的batch_size可以让GPU/NPU计算单元获得更高的利用率,但是也要根据实际情况来选择batch_size,例如不能太大导致OOM。
  • 提升数据读取的效率:如果读取一个batch数据的时间要长于GPU/NPU计算一个batch的时间,就有可能出现GPU/NPU利用率上下浮动的情况。建议优化数据读取和数据增强的性能,例如将数据读取并行化,或者使用DALI等工具提高数据增强的速度。
  • 模型保存不要太频繁:模型保存操作一般会阻塞训练,如果模型较大,并且较频繁地进行保存,就会影响GPU/NPU利用率。同理,其他非GPU/NPU操作尽量不要阻塞训练主进程太多的时间,如日志打印,保存训练指标信息等。
分享:

    相关文档

    相关产品