admin管理员组

文章数量:1600063

作者丨稚晖@知乎

来源丨https://zhuanlan.zhihu/p/336429888

0 前言

工作原因一直想配置一台自己的深度学习工作站服务器,之前自己看完paper想做一些实验或者复现模型的时候只能用自己的日常PC来跑很麻烦...一方面电脑得装双系统,干活的时候就不能用作其他用途了;另一方面,即使是没有使用流程的问题,GTX1080的性能也还是弱了一些,更何况我用的是一个A4迷你机箱,长时间高负载的训练任务也不太可靠。

以前在公司的时候还可以用公司的DGX训练集群做一些实验,但是我现在的开发环境已经切换到了昇腾的NPU架构芯片之上了,昇腾平台算力方面虽然是比肩甚至可以超越英伟达,但是目前暂时很多学术界的生态都还是基于GPU服务器的(主要是指开源代码),且我们这儿昇腾服务器对个人也不好买(且买不起),所以有一台这样的GPU工作站还是会方便一些。

那么本文是我在组装工作站过程中记录的详细操作流程,供有类似需求的同学参考~

首先我们来看一下配置完后最终效果的视频:

1. 硬件篇

1.1 工作站配置选型

配件全家福

服务器的配置以个人使用性价比为主,同时考虑到以后的扩展性像是主板和机箱这些配件配置设置一些冗余。首先是CPU平台的选择,虽然AMD这两年实在是香,但是作为生产力工具考虑到软件库的兼容性问题,还是决定选择intel平台里十代X系列CPU+X299主板,算是比较稳的方案,而且某东上CPU搭配主板套装一起买也性价比也很高。GPU方面今年的30系显卡都比较良心,使用两块3080或者一块3090都是很给力的,24G的显存也已经跟TITAN RTX持平了(价格却只要一半)...这里考虑到主板上只能插两块PCIEx16的卡,为了以后可能的提升性能还需要再加一块卡,所以3090是最佳选择。

最后选定的配置如下:

  • CPU:i9-10920X

  • 显卡GPU:七彩虹RTX3090 Advance

  • 内存:芝奇幻光戟16G x 4共64G

  • 主板:华硕X299-DELUXE PRIME

  • 固态硬盘:1TB西数NVME SSD + 1TB三星870QVO SATA SSD

  • 机械硬盘:希捷EXOS 12TB氦气盘

  • 电源:海盗船AX1200i 1200W模组电源

  • 散热器:海盗船H100X240水冷 + 若干120机箱风扇

  • 机箱:海盗船AIR540 E-ATX机箱

其中硬盘的设计是这样的:1T的NVME固态做系统盘,12T的机械盘作为数据集仓库,另外一个1T SATA固态作为训练时的数据集缓存,因为IO读写速度也是会影响训练效率的,所以相比于直接从机械盘里面读取数据,加一块SSD做cache效果会好很多。

1.2 电脑组装

总之就是快乐的玩具拼装过程~

机箱尺寸比较大,预留的空间非常足所以不会出现像是在装A4机箱时那种考验走线和装配顺序的技巧问题;而且服务器嘛,安静地塞在某个角落就好了,也不用过于考虑什么美观问题,所以走线就很随意了:

这个机箱设计还是很科学的,预留了足够多的扩展接口比如:2个 3.5寸可快拆盘位、5个2.5寸可快拆盘位、光驱位(用不到,后期改造了)、前后顶部一堆风扇位等等。线材基本都可以塞到机箱的另一个侧面,前面板安装了三个进风风扇,背部安装了一个出风风扇,水冷的冷排和风扇在顶端。

这里值得一提的是,正面的光驱位属于用不上的老古董,所以我改造了一下准备装一个小型的LCD屏幕上去,这样偶尔需要进图形桌面或者BIOS界面的时候,就不用再抱个显示器插在机箱上了;此外以后也可以写个软件把这个屏幕作为系统状态监视器来使用~

↑ 后面会3D打印一个外壳把屏幕固定住。

这个屏幕也是我前阵子刚设计的,项目已经开源了叫做PocketLCD,感兴趣的可以去仓库看看:

https://github/peng-zhihui/PocketLCDgithub

2. 系统篇

系统选择DL开发里面最常用的Ubuntu,最新的稳定版本是20.04,安装过程需要准备一个U盘作为系统启动盘。

2.1 安装Ubuntu 20.04系统

  1. 在官网下载Ubuntu镜像:Ubuntu 20.04.1 LTS (Focal Fossa)(http://releases.ubuntu/20.04/),选择Desktop Image版本,得到.iso的镜像文件。

  2. Windows下使用UltraISO工具打开.iso镜像文件,并将其写入到一个U盘,得到系统启动盘:

  1. 将U盘插到服务器上,开机按del键(具体什么键跟主板型号有关)选择启动项进入临时的Ubuntu系统,在图形界面中选择Install Ubuntu,所有配置都可以使用默认的,改一下用户名和密码即可。这里建议使用英文作为默认语言,省得给自己日后开发找麻烦哈。

安装过程中会联网下载一些软件包更新,可以直接点skip掉,在安装好系统之后再手动更新也是一样的。

1. 进入系统后设置一下root账户密码:

sudo passwd root

2.2 配置国内镜像软件源

为了提升后续安装软件时的幸福感,第一步当然先要替换一下软件源。

1. 备份原来的源:

cp /etc/apt/sources.list /etc/apt/sources.list.bak

2. 将源的内容设置为阿里云镜像:

sudo vim /etc/apt/sources.list

内容改为:

deb http://mirrors.aliyun/ubuntu/ focal main restricted universe multiverse
 deb-src http://mirrors.aliyun/ubuntu/ focal main restricted universe multiverse
 deb http://mirrors.aliyun/ubuntu/ focal-security main restricted universe multiverse
 deb-src http://mirrors.aliyun/ubuntu/ focal-security main restricted universe multiverse
 deb http://mirrors.aliyun/ubuntu/ focal-updates main restricted universe multiverse
 deb-src http://mirrors.aliyun/ubuntu/ focal-updates main restricted universe multiverse
 deb http://mirrors.aliyun/ubuntu/ focal-proposed main restricted universe multiverse
 deb-src http://mirrors.aliyun/ubuntu/ focal-proposed main restricted universe multiverse
 deb http://mirrors.aliyun/ubuntu/ focal-backports main restricted universe multiverse
 deb-src http://mirrors.aliyun/ubuntu/ focal-backports main restricted universe multiverse

3. 更新软件列表:

sudo apt update
sudo apt upgrade

也可以去网上搜其他镜像,在我这边经测试阿里云是最快的。另外也可以在图形桌面环境下打开Software & Updates

本文标签: 工作站保姆深度指南教程