炼丹中的一些小问题及解答(持续更新)

📅 发布时间:2026/7/10 13:14:47
炼丹中的一些小问题及解答(持续更新) Q1使用nvidia-smi看不到任务进程想要结束某个进程怎么办可以使用一下来查看进程使用通道过滤选择python的程序。之后使用 kill -9 ID即可杀掉程序。ps aux|grep root|grep python批量打印进程ID可以使用如下指令在后面加上|sh即可全部杀死。不过要小心哦。ps aux|grep root|grep python|grep -v grep| awk {print kill -9 $2} ps aux|grep root|grep python|grep -v grep| awk {print kill -9 $2}|shQ2出现报错 RuntimeError: DataLoader worker (pid 27097) is killed by signal: Killed. 或者KilledRuntimeError: DataLoader worker (pid 27097) is killed by signal: Killed. Killed这种报错是因为内存给小了原来内存也是会影响DataLoader的需要调小num_workers或者加大内存。Q3直接使用python train.py 跑代码必须SSH一直连接这服务器这时候如果出现网络波动或者网络断连就会直接把程序给杀掉。1、使用.sh文件进行调用可以进行解决但是有些服务器并不会给你执行sh文件的权限。2、此时可以使用一些小工具。这里请教了kunyang发现tmux是一个很好用的工具以下是一些常用指令可能可以帮助到大家。首先是安装使用apt-get install tmux即可完成安装。创建一个新的会话session-s 后面是该会话的名字。tmux new -s mytmux使用ctrlB组合键可以发出一些指令按完ctrlB后按C可以在新建一个窗口在最下面可以看到所有的窗口。按0 1 2 进行窗口切换星号在哪个窗口代表现在调用的哪个。按D退出到命令行还可以回来查看现有的tmuxtmux ls回到之前的tmuxtmux a -t mytmux关闭某个不相应的窗口tmux kill-window -t 6Ctrlb x关闭当前窗格 Ctrlb c创建一个新窗口状态栏会显示多个窗口的信息。 Ctrlb p切换到上一个窗口按照状态栏上的顺序。 Ctrlb n切换到下一个窗口。 Ctrlb ,窗口重命名。彻底关闭窗口会让你二次确认ctrlB 这样就就再也不怕断网之类的事情发生了。Q4校园Linux登录校园网以及注销校园网防止挖矿病毒curl http://10.10.43.3 --data DDDDDstudent_idupasspassword0MKKey curl http://10.10.43.3/F.htmQ5关于cudnn对cudnn的解释网上已经有很多了。基本上就是说默认是False如果网络的输入数据维度或类型上变化不大设置成True在一起开始会花费一些时间而后面会降低时间提高速度。但我想说的是我使用这行代码后跑程序需要的显存出现了波动。之前跑程序我需要18G的显存但使用这行后一开始只需要16G之后又需要20G。具体原理不太清楚。torch.backends.cudnn.benchmark TrueQ6关于保存和加载模型。我们可以使用torch.save来保存模型。而在加载时不能直接使用torch.load()来使用torch.load()仅读取了模型参数。应该先使用自己定义得方法或者其它的办法先读取到基本模型架构再使用load_state_dict来加载参数。torch.save(net.state_dict(), ./model.pth) netload_model() net.load_state_dict(torch.load(args.resume))Q7出现报错 Process finished with exit code 137 程序退出大概率是因为内存不足报的错误我是在存储一个中间结果时报错的每一轮循环我都让一个tensor变得更大以至于最后出现了137错误。这个Killed错误类似因此我进行了分阶段的保存避免了报错或者在申请服务器资源时多申请写内存也可以解决。Q8数据集太大使用FTP上传到服务器太慢使用百度网盘就行数据下载。居家之后链接VPN进行文件得传递速度太慢因此使用了百度网盘的方式首先需要安装两个库requests和bypy。pip install requests -i https://pypi.doubanio.com/simple pip install bypy -i https://pypi.doubanio.com/simple之后在浏览器端登陆好百度网盘。然后使用指令得到一个网页连接复制到浏览器打开进行授权操作并得到授权码。bypy info最后将授权码复制到终端完成授权即可。之后在百度网盘中会多出来一个应用数据文件夹其中有一个bypy的文件只要将需要下载的文件放入bypy中之后在终端使用命令即可完成文件传输bypy downdir -v # 下载bypy中所有文件 bypy downdir dirname -v # 下载指定文件 bypy upload -v # 上传文件 bypy -c # 取消授权 bypy list # 显示bypy中文件列表在Linux端换百度网盘账号删除当前用户目录下 ~/.bypy 隐藏文件夹中的json文件再输入bypy info即可重新认证绑定新的百度云。Q9Linux下执行.sh命令发现Permission denied。chmod ux *.sh再次执行命令就行了。Q10使用tar解压文件tar -xzvf file.tar.gz -C ./xxx # 解压gar.gz包到指定路径Q11: ln 建立软链接。我们可以使用软链接将需要的数据集连接到项目目录中的data。ln -s sours_file_root target_file_root # 建立软链接 rm -rf target_file_root # 删除软链接但不删除数据 rm -rf target_file_root/ # 既删除软链接也会把之前源文件删掉Q12取消服务器中的代理unset http_proxy unset https_proxy unset HTTP_PROXY unset HTTPS_PROXY unset all_proxy unset ALL_PROXY