创建虚拟机

对于第一次使用autodl的用户,进入autodl官网后;首先要进行账号的注册,如果是学生的话要记得做学生认证,这可以省一点钱。这些操作比较简单,这里不多介绍。

创建实例

注册完成后,点击右上角的控制台按钮,进入控制台的界面。如图:

创立实例

随后,进入实例容器中,如图:

进入实例容器

这里,展示了我们租用的所有实例,如图:

实例容器

点击租用新实例,进入实例创建的界面,如图:

创建实例

可以看到,这里可以选择合适的计费方式、地区、GPU类型、GPU 数量、数据盘大小、使用的镜像等。

这里,我们选择按量计费重庆A区4090D*1500GB数据盘,已经如图镜像

镜像

随后,点击创建实例,等待一段时间后,实例就创建成功了。

创建实例成功

连接虚拟机

虽然autodl给出了几种不同的连接方式,但是这里我推荐使用SSH连接方式。并且是依赖密钥

设置config

这里,我们首先复制登录指令,你会得到一个类似于ssh -p 12345 root@xxx.mmm.nnn.com形式的指令。然后,进入用户下的.ssh文件夹;如图

用户

进入config文件中,按照下面的格式写入:

1
2
3
4
5
Host autodl
HostName xxx.mmm.nnn.com
Port 12345
User root
IdentityFile ~/.ssh/autodl

设置密钥-公钥对

进入Terminal,在windows上就是windows powershell,输入cd ~/.ssh进入了.ssh文件夹中。

然后输入ssh-keygen -t rsa -C [user_name],这里的user_name就是你的gcp的用户名,也就是从web登录后的xxx@mmm中的xxx;也就是root随后会要求你输入一个保存的文件名,不妨设置为autodl

1
ssh-keygen -t rsa -C root

随后,会要求你输入一个密码,这里可以不设置,直接回车。然后,进入.ssh中的autodl.pub文件中,复制其中的内容。

然后,在容器实例中,进入设置密钥登录,如图:

设置密钥登录

随后,点击添加SSH公钥,将复制的公钥粘贴进去,点击确定,重启我们正在运行的实例,等待一段时间后,密钥就添加成功了。

连接虚拟机

进入Terminal,输入ssh autodl就可以进入我们的虚拟机了。

环境

CUDA

我一般会选择自带pytorch的镜像,这样就不用自己按照CUDACUDNN了。但是,如果真的遇到需要自己按照,也是很简单的。

1. 安装内核头文件

按照以下步骤操作:

  1. 更新包列表

    1
    sudo apt-get update
  2. 安装内核头文件

    1
    sudo apt-get install linux-headers-$(uname -r)
  3. 重新运行NVIDIA驱动程序安装脚本

    1
    sudo /opt/deeplearning/install-driver.bash

2. 验证安装

  1. 检查NVIDIA驱动程序是否正确安装
    1
    nvidia-smi

示例步骤

请按照以下完整步骤操作:

1
2
3
4
5
6
7
8
9
10
11
# 更新包列表
sudo apt-get update

# 安装内核头文件
sudo apt-get install linux-headers-$(uname -r)

# 重新运行NVIDIA驱动程序安装脚本
sudo /opt/deeplearning/install-driver.bash

# 检查NVIDIA驱动程序是否正确安装
nvidia-smi

可能的其他情况

如果在运行上述步骤时仍然遇到问题,可以检查以下情况:

  1. 确认内核版本
    确认当前运行的内核版本:

    1
    uname -r

    确保你安装的内核头文件版本与该版本匹配。

  2. 手动指定内核源目录
    如果系统中有多个内核版本,可能需要手动指定内核源目录:

    1
    sudo /opt/deeplearning/install-driver.bash --kernelsourcedir /usr/src/linux-headers-$(uname -r)

示例输出

成功运行这些步骤后,你应该看到 nvidia-smi 命令的输出,显示安装的NVIDIA驱动程序和GPU信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Fri Jun 28 02:05:51 2024
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.06 Driver Version: 450.51.06 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla V100-SXM2... Off | 00000000:00:04.0 Off | N/A |
| N/A 30C P0 25W / 300W | 0MiB / 16160MiB | 0% Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+

pytorch

一般来说,pytorch在原有的镜像中就已经正确的安装了,但是我们往往要在base之外建立自己的虚拟环境,比如vision,这时候,我们就需要安装自己的torch了,这同样十分简单。

首先进入pytorch,在如图位置选择适合自己的torch类型,值得注意的是Compute Platform是向下兼容的。

也就是说,如果使用的机器是CUDA Version: 12.0 那么就应该选择CUDA 11.8

到此为止,绝大多数通用的环境配置就搞完了,剩下的package就自己下载吧~~

修改默认环境

一般,默认的环境是condabase环境;但是,这往往不是我们自己建立的环境;那么,最好还是把自己建立的虚拟环境设置为默认环境

1
2
3
conda config --set auto_activate_base false
conda activate gene
conda config --set auto_activate_base true

另一种办法是修改condaconfig:

1
2
conda activate gene
conda config --set env_prompt '({default_env})'

然后使用conda info --envs就可以看到gene环境已经被激活。

修改环境