/ ai开发平台modelarts/ 故障排除/ lite server/ 训练速度突然下降以及执行nvidia-smi卡顿如何解决?
更新时间:2024-09-07 gmt 08:00

训练速度突然下降以及执行nvidia-九游平台

问题现象

在高性能8卡gpu的裸金属上的训练任务突然变慢,以前1个epoch约2小时执行完成,最近1个epoch需要2天才能执行完成,并且执行“nvidia-smi”也明显变很卡顿。

原因分析

根据现象描述可能出现了nvidia-smi d 进程。 "d "表示进程状态为"uninterruptible sleep (usually io)",即进程正在等待i/o操作完成,此时无法被中断。

在正常情况下,nvidia-smi进程通常只会短暂地出现d 状态,因为它们是由内核控制的,该进程处于等待i/o操作完成的状态,可能是在读取或写入gpu相关的数据,这是正常的操作。但是,如果该进程一直处于"d "状态,可能表明出现了i/o操作阻塞或其他问题,这可能导致系统死锁或其他问题。

如果想构造nvidia-smi d 进程,可以死循环一直执行nvidia-smi体验d 进程带来的系统不稳定性, 如:

#!/bin/bash
while true; do
nvidia-smi &
sleep 1   # 可以根据需要调整间隔时间
done

然后执行查看产生nvidia d 进程

ps -aux | grep -w d 

结果如下:

图1 nvidia d 进程

此时可以观察你的训练任务或者执行“nvidia-smi”等命令,几乎是卡顿无法执行,因为内核io已经阻塞, 无法执行相关gpu命令,只能尝试释放d 进程。

处理方法

“nvidia-smi”是一个nvidia gpu监视器命令行工具,用于查看gpu的使用情况和性能指标,可以帮助用户进行gpu优化和故障排除。 但是建议在业务软件或训练算法中,避免频繁使用“nvidia-smi”命令功能获取相关信息,存在锁死的风险。出现d 进程后可以尝试如下方法:

  • 方法1: 可以根据ps -aux查到的进程号, 使用kill -9强制关闭进程。
    sudo kill -9 <进程id>
  • 方法2: 如果方法1执行后无法消除d 进程, 请尝试重启服务器。

相关文档

网站地图