容器实例常见问题
更新时间:2025-01-03 11:21:10
本文汇总了容器实例的常见问题及解决方法。
Q1:执行程序时,提示显存不足(CUDA OOM)的原因及解决方法
-
情况一:执行程序直接报错,提示 OOM 显存不足
最简单的调试办法是设置
batch size=1
然后逐步增大,观察跑到多大 bs 时 OOM,以此为依据再决定更换为多卡或选择更大显存的单卡。 -
情况二:程序第一运行时并未出现 OOM 报错,但再次运行提示 OOM
-
先使用
nvidia-smi
命令确认在未跑时显存占用。 -
若没有显存占用,那么说明程序的特性就这样,比如动态深度学习框架的显存是会发生变化的,正好在计算过程中对显存的需求超出上限。
-
若有占用那么说明有之前跑的残留进程需要清理掉。
-
查看进程 PID。
ps -ef
-
根据上一步产出的 PID 值,执行如下命令,清理进程。
kill -9 <PID>
-
-
Q2:容器实例更换镜像后 VSCode、SSH 等无法链接,应该如何解决?
用户删除本地 known_hosts 文件后重试。
删除 know_hosts 文件操作:
-
Linux/Mac 系统
rm ~/.ssh/known_hosts
-
Windows 系统
直接删除
C:/Users/当前user名字/.ssh/konwn_hosts
文件即可。
Q3:已经释放的容器实例,还能找回其内数据吗?
不能找回。
Q4:如果容器实例所在的主机出现硬盘、GPU 等故障,怎么办?
有两个选择:迁移实例到其他主机或等待机器维修重新上线。
针对该情况平台将会做出相应的赔偿。
Q5:容器实例上的数据会意外损坏或丢失吗?
容器实例中的本地数据盘,使用的大部分为物理磁盘,无冗余备份。因此,存储在本地磁盘的数据可能存在丢失的可能性,用户需及时把重要的数据进行备份。
对于存储于共享云盘的数据,具备多副本冗余,数据可靠性高。
Q6:容器实例的系统盘空间不足怎么办?
-
打开容器实例的 web 连接。
-
执行如下命令,查看各文件夹大小。比如下方的
.bashrc
、.profile
文件的大小,但此时看到的文件夹大小仅仅是文件夹本身大小,并非文件夹下所有文件的大小。ll -alh
-
执行如下命令,统计文件夹下所有文件的大小。
du -sh <path_name>
命令行示例:
du -sh .bashrc
-
若空间不足,用户可申请修改显存大小,为
batch size
留出足够空间。