文章

第一次使用Linux远程开发

事情要从大半夜11点收到老板的消息开始说起...

第一次使用Linux远程开发

大半夜11点收到老板消息,有个紧急任务要给我做,项目的具体内容保密不能公开,大致情况就是深度学习那些内容。

看了一眼需求,很经典的resnet50的backbone,本地的电脑自然是带不动(我自己的电脑用的3060的卡),因此也是用上Linux服务器了。

Linux的部分我只是在本科自学Java那会的时候,拿CentOS稍微看过一点,但是当时也没怎么用,所以这次用说是从零开始也不为过了。

本则笔记大概记录一下使用过程中比较有意思的一些内容,后来把与mask2former相关一些的内容移动到了这篇文档里面。

Get Everything Started

如果要使用服务器的话,第一点肯定是要连接到服务器。

给的教程是CSDN的这篇vscode连接远程服务器(傻瓜式教学),用自己常用的VSCode环境做开发还是比较友好的,vim我自己用的实际上还不太熟。

在这个基础上,不算太难,相当于就是一个SSH的配置,跟自己提交Github大差不差。

tmux

用VSCode跑训练进程的时候不可能整天守着+保持自己电脑开机,但是远端的服务器肯定是一直在跑的,这时候有个东西能监听session就好。

tmux我觉得是很符合直觉的一个工具,它就是干这个的。

使用方法参见阮一峰的网络日志:Tmux 使用教程

谁更强?

没什么用的小知识增加了。

使用nvidia-smi居然会看不全GPU名字,看到了一行:

| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 Off | Off |

气笑了,解决方案是nvidia-smi --query-gpu=name --format=csv,noheader

目前组里用的两张卡是NVIDIA GeForce RTX 4090和NVIDIA RTX A6000。乍一听前者显存24G,后者显存48G,感觉应该是后面那个厉害点,但发现后者跑模型明显速度不对劲。

找GPT要了个规格对比图。后起之秀,更耗电,核心更多,也难怪跑的更快了。

参数NVIDIA GeForce RTX 4090NVIDIA RTX A6000
架构Ada Lovelace (AD102)Ampere (GA102)
CUDA 核心数1638410752
Tensor 核心数512336
显存容量24 GB GDDR6X48 GB GDDR6X
显存带宽1008 GB/s700 GB/s
功耗450W300W
基础频率2235 MHz1395 MHz
加速频率2520 MHz1695 MHz
多精度性能高(支持 FP32、FP16、INT8 等)高(支持 FP32、FP16、TF32 等)
发布日期2022年10月2020年12月

另外,实测下来IMS_PER_BATCH=2只占16G左右的显存,但是GPU利用率已经干到70~80,往上加BATCH_SIZE虽然显存都用上了,但是训练速度却因为GPU满负荷反而会降低,这就很乐了。

Hello, tex!

预计要投一篇ccf-b,学习了一下外文期刊的格式。

目前预订要投的这个会议给了一份 \(\TeX\) 模板。

因为学习过 \(\LaTeX\) 的原因所以相对比较简单,装了个TeXStudio+MikTeX最低环境,然后照着给的template改就完事了。

不得不说,虽然看着还是挺花的,但tex模板还是比Word方便很多,尤其是最后BibTeX的部分,特别省心。

希望毕设也能给个 \(\TeX\) 模板,不因为别的,就因为Word模板实在太恶心了,总要冷不丁坑你一下。

本文由作者按照 CC BY 4.0 进行授权