当前位置:首页 > 汽车

【新大洲本田pem-f1】使用AMD CPU构建价值3,000美元的深度学习服务器

GitHub,作者:Wayde Gilliam,选自机器心脏编译。

本文作者详细介绍了从CPU、GPU、主板、电源、机箱等选择到部件安装、服务器设置等深度学习服务器的组装过程。作者指出,组装者首先要掌握自己的需求,然后根据预算做出合理的选择。

注:本文档旨在说明Slav Ivanov的简化版本:服务器设置和多用户协作(),用于创建自己的DL框的句子()。

我开始学习课程的第一部分——“practical deep learning for coders”,我想构建自己的服务器,以使用AWS p2和存储的升级来培训模型。会使用更大的数据集,训练模型时缺乏足够的处理能力,不想等几个小时,所以构建自己的DL rig服务器对我来说是一个不错的选择,长远来看,不仅可以节省很多时间和金钱,还可以积累组装服务器的良好经验。(大卫亚设,Northern Exposure(美国电视剧),Northern Exposure)。

装配

列示零件表

在准备零件之前,你要弄清楚自己到底想从机器里得到什么。我个人希望有以下改进。

比Amazon p2更强大的附加GPU、RAM、存储和定制液体冷却的空间可通过较长的硬件预算控制在3,000美元左右。因为比较和组装其他部件非常简单,部件兼容性检查器也非常好。我将详细说明选择每个部件的原因以及如何与整个系统一起工作。我的服务器链接地址是https:///b/CgpG3C。

GPU: GTX 1080 Ti Hybrid

因为要使用显卡训练模型,所以这是装配过程中最重要的部分,所以GPU越强,处理大型数据集的速度就越快。GPU内存越大,处理能力也越强(例如,培训速度越快,批量越大)……。)。我为我的服务器选择了这两张显卡。因为我在预算中为它们预留了空间,我可以用一张显卡训练模型,让其他用户在第二张卡上训练模型。(威廉莎士比亚,模板,计算机名言)(1070,1060等)根据预算减少GPU内存(1070,1060等),防止与其他零部件的预算竞争。Hybrid 1080 GPU也很好。这是因为除了大多数GPU中的正常风扇冷却外,还预装了AIO液冷系统。1080 Ti在满负载运行时过热,因此在训练模型时,良好的冷却系统对延长显卡的使用寿命和保持性能至关重要。有关选择图形的详细信息,请参阅。本文有助于真正理解如何为深度学习环境选择合适的图形卡。

CPU: AMD Threadripper 1900x

虽然用显卡训练了神经网络,但CPU仍然很重要。因为要用于数据准备等目的,多核CPU将有助于加快速度。(大卫亚设,Northern Exposure(美国电视))使用了“撕裂线程”Treadripper。市场上新的多核CPU(ThreadRipper第二代有32枚内核!)而且比Intel价格便宜多了。1900x是去年发布的基本TR,只有8个内核,但该服务器的总体目标是保持可升级性。

选择CPU时,请确认显卡有8个或16个pcie插槽,以便在低负载下获得最佳性能。否则,就有阻塞系统的危险。如果高端CPU在服务器上有4个显卡,则有足够的pcie插槽。

主板:MSI X399 SLI Plus

选择此主板是因为它是一款完整的ATX主板,可容纳4个GPU和高达128GB的RAM。如前所述,该服务器的主要目标之一是保持可升级状态。

内存:32gb corsair vengeance lpx DDR 4(2个16gb)

内存越大,处理大型数据集就越容易。下一个升级计划是添加两个16GB RAM内存条。这提高了服务器性能,但没有安装4通道内存(4个8GB内存)。

存储:256GB Samsung固态硬盘2TB硬盘

Ubuntu、所有磁带库、SSD使用的数据集以及手中的所有其他数据都存储在2TB机械硬盘上。

冷却器:Corsair H100i v2液体冷却器

“线程撕裂”没有备用冷却器。(如果你有30美元的闲钱,至少要买一台便宜的二手冷却器。)所以我想要一台24小时可用的便宜、易于维护的冷却器。(约翰f肯尼迪,《Northern Exposure》(美国电视剧),HART)将这套装置的诸多优点结合在一起的冷却器非常容易安装,非常稳定(数十万台装置中只有1-2台会发生冷却剂泄漏)。安静。

电源:evga supernova 1000w 80金牌认证

最好是功率超过技术要求的PSU。PCPartpicker的功率计算器可以大致计算出所需的功率量(我的服务器是824瓦),但最好安全地工作,以免在数量上出现错误,因此无法打开计算机。“金牌认证”是指PSU的效率(热量浪费的电力量)。

机箱:corsair 760t全塔式机

我选择这个机箱是因为它的价格和内部空间大小。虽然它并不能提高你的模型训练速度,但是透明的侧面板和红色的 LED 确实让你看起来更酷。

这幅图里的东西花掉了我一年的积蓄和毕业的钱

把部件整合到一起

你可能不太了解如何组装一台电脑,这个过程其实就像组装一套昂贵的乐高积木一样。任何人都可以做到,因为它真的很简单。我将快速介绍如何组装电脑,并且我强烈建议你在组装自己的电脑时观看完整的视频(?v = IhX0fOUYd8Q)。这些说明几乎适用于任何你正在使用的电脑,就像我上面链接的视频指南一样。

第一步:组装 CPU

这可能是组装电脑过程中最可怕的部分,因为你必须遵循特定的步骤,并且可能由于一些小意外而毁掉价值 430 美元的 CPU(如弄断一个 CPU 的引脚)。不过这一步其实很简单,你只需确保组装前看过视频教程即可。对于 Threadripper 来说,安装过程略有不同,因为在大多数主板上,你不需要「锁紧」处理器,而是使用单个扣架即可。

照片来源:Slav Ivanov

第二步:组装电源设备

电源的安装顺序并没有对错之分,但我喜欢先把 PSU 放进盒子里,因为有些情况下你需要把 PSU 卡进一个插槽里,这样做你才能「穿过主板」。

第三步:组装其它部件

这是至关重要的一步,一旦主板安装好,那其他部分的安装会变得很容易。我将按照如下顺序进行安装:

  1. 安装 RAM。这很简单,只需把内存条向正确的方向移动,并把插槽正确地按进主板即可(请参阅安装手册,因为插槽要根据你拥有的内存条个数决定)。
  2. 安装 CPU 冷却器。唯一的小麻烦是为了与 TR 兼容,我必须更换安装支架,这需要很大的力气。安装散热器需要 8 个螺栓,我已安装完毕。
  3. 安装显卡。只需要把显卡安装到主板的特定卡槽中即可(像内存条一样,参照你的手册,看哪些插槽可以把显卡放入),再把散热器固定在你的机箱上。要确保你的散热器在 GPU 上方。在上图中我犯了个小错误,所以不得不把它重新挂在机箱的前板上。
  4. 安装存储器。为了获得更好的散热效果我卸掉了一块驱动板,所以我把 SSD 和 HDD 放在右下角的单驱动器槽里。

第四步:安装成功?

现在可以打开你的设备了。开始因为我设备的电源键上正负线接反了,所以我的设备并没有成功打开,但后来还是出现了预期的白光和红光。如果一切顺利,你可以看到你的电脑屏幕被点亮,然后主板开始搜索引导设备。

设置服务器

安装操作系统

下一步是安装操作系统。我使用的是 Linux,因为大多数 DL 框架都是针对该系统设计的。使用的台式机是 Ubuntu 16.04 LTS, 用 USB 就可安装全部的东西。有很多像 UNetbootin 或 Rufus(仅用于 Windows)的免费工具,可以先下载到 U 盘中备用。这是一个介绍在 Mac 上创建可启动 USB 的完整过程的教程(),如果你用 Windows,可以打开此链接:。

设置 SSH

第一步:端口映射

你需要对所有的路由器进行类似处理,如果是 apple 的路由器可以遵循这个指南:,操作如下:1. 为你的服务器设置一个静态 IP,防止它在每次关闭时更改。2. 用 Apple Airport Utility 登录你的路由器。3. 为服务器映射端口,完成这一步需要找到服务器的 MAC 地址,如何在 Ubuntu 找到地址可以查看此链接:。

第二步:创建一个动态 IP 地址

我之前为服务器创建过动态 IP 地址,可以允许我在终端远程连接它。你可以通过该网站()验证它的有效性。

键入一个如下所示的命令连接到我的服务器:

ssh [my_username]@[my_ip] -L 8888:[dl-rig_static_ip]:8889

我的服务器在端口 8888 上运行,jupyter notebooks 运行在 8889 上(-L 选项将指定的本机端口重新定向到不同的主机和端口)。这样我们就可以在本地运行我们的设备,与服务器同时测试,以便训练。如果不想这样,在-L 之前把所有东西输入进去即可。在下一节我会解释如何更改运行 jupyter notebooks 的端口。

安装深度学习/机器学习库

现在需要安装所有的与深度学习/机器学习相关的库。我会将安装脚本进行分节,这样你就容易理解这些内容。该脚本是基于 Jeremy Howard』s 编写的 in(https://github.com/fastai/courses/blob/master/setup/in),这里边很多东西不仅仅是因为它们是实用性工具,更是因为这也是我们要在 Fastai 中使用的。

首先,我们需要保证系统是最新的,并且安装了所有我们需要的基础工具包:

sudo apt-get update

sudo apt-get --assume-yes upgrade

sudo apt-get --assume-yes install tmux build-essential gcc g++ make binutils unzip

sudo apt-get --assume-yes install software-properties-common

sudo apt-get --assume-yes install git

下一步是下载和安装所有 cuda GPU 的驱动包:

mkdir ~/downloadscd ~/downloads

wget

sudo dpkg -i cuda-re

sudo apt-key adv --fetch-keys

sudo apt-get update

sudo apt-get -y install cuda

sudo apt-get --assume-yes upgrade

sudo apt-get --assume-yes autoremove

sudo apt-get install cuda- cuda-command-line-tools-9-0

现在我们开始验证是否正确安装了 CUDA:

sudo modprobe nvidia

nvcc --version

nvidia-smi

现在开始,我们将 CUDA(Nvidia Deep Learning api)添加到路径变量:

cat >> ~/.bashrc << 'EOF'

export PATH=/usr/local${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local\

${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

EOF

source ~/.bashrc

下一步是安装 CuDNN 库(创建神经网络所需):

wget http://files./files/cudnn-9.1-linux-x64-v7.tgz

tar xf cudnn-9.1-linux-x64-v7.tgz

sudo cp cuda/include/*.* /usr/local/cuda/include/

sudo cp cuda/lib64/*.* /usr/local/cuda/lib64/

现在我们为当前用户安装 Anaconda:

wget ";

bash "Anaconda3-5.0.1-Linux-x86_64.sh" -b

cd ~

echo "export PATH=\"$HOME/anaconda3/bin:\$PATH\"" >> ~/.bashrc

export PATH="$HOME/anaconda3/bin:$PATH"

conda install -y bcolz

conda upgrade -y --all

下一步,安装 Tensorflow 和 keras:

pip install --ignore-installed --upgrade

pip install keras

mkdir ~/.keras

echo '{

"image_dim_ordering": "tf",

"epsilon": 1e-07,

"floatx": "float32",

"backend": "tensorflow"

}' > ~/.kera

接下来,我们将为 Fastai 安装 Python 依赖项:

mkdir -p ~/development/_training/ml

cd ~/development/_training/ml

git clone

cd fastai

conda env update

以下几节将介绍如何配置 jupyter notebook:

# Leaving the next line uncommented will prompt you to provide a password to

# use with your jupyter notebook.

jupass=`python -c "from no import passwd; print(passwd())"`

# To hardcode the password to 'jupyter' comment line above and uncomment the line below.

#jupass=sha1:85ff16c0f1a9:c296112bf7b82121f5ec73ef4c1b9305b9e538af

# create ssl cert for jupyter notebook

openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout $HOME -out $HOME -subj "/C=IE"

# configure notebook

echo "c.No = u'/home/{user}'" >> $HOME/.jupyter

echo "c.No = u'/home/{user}'" >> $HOME/.jupyter

echo "c.No = u'"$jupass"'" >> $HOME/.jupyter

echo "c.No = '*'" >> $HOME/.jupyter

echo "c.No = False" >> $HOME/.jupyter

要更改默认端口以在(端口 8888)上运行 Jupyter notebook,请取消注释,并输入所需端口。这样就可以在服务器和本地同时运行你的笔记本,也可以在你使用笔记本时让多个用户使用他们自己的笔记本。

#echo "c.No = 9999" >> $HOME/.jupyter

现在我们开始配置 tmux,这个工具可以使我们在终端窗口创建多个「窗口」,同时在断开连接后仍能保持程序的运行。因为这个文件能够帮助我们理解 tmux 的所有功能,所以需要检查此文件。它非常的有用,因为你可以在一个窗口中运行你的笔记本,在另一个窗口中监视 GPU 使用,并在第三个窗口中打开一个 linux 终端:

pip install tmuxp

mkdir ~/.tmuxp

接下来,我们将创建 tmuxp 的配置文件,该文件将在一个命令中对开发环境进行设置,这样我们每次想处理事务的时候就无需配置窗口、启用 jupyter notebook 了。对于 fastai 环境,我们将从 tmuxp 加载 fastai 开始。请参见使用 tmuxp 的链接,此处是 bash 脚本中的文档,此链接用于在服务器重启时保存 tmux 会话。现在让我们配置运行环境。

cat > $HOME/.tmux <<tmuxp-config

session_name: fastai

windows:

- window_name: dev window

layout: main-vertical

options:

main-pane-width: 140

shell_command_before:

# run as a first command in all panes

- cd ~/development/_training/ml/fastai

- source activate fastai

panes:

- shell_command:

- clear

- shell_command:

- clear

- jupyter notebook

- shell_command:

- watch -n 0.5 nvidia-smi

Tmuxp-config

因为我们不再需要这些,所以可以删除安装文件:

cd ~/downloads

rm -rf cuda-re xf cudnn-9.1-linux-x64-v7.tgz Anaconda3-5.0.1-Linux-x86_64.sh

cd ~

就是这样。在我写这篇文章的时候,服务器一直在全天候运行,无问题、无噪声、非常轻松地通过了训练。

其他参考资料来源:

1.《【新大洲本田pem-f1】使用AMD CPU构建价值3,000美元的深度学习服务器》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【新大洲本田pem-f1】使用AMD CPU构建价值3,000美元的深度学习服务器》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/auto/2866379.html

上一篇

【奔驰320i报价】10 q 10 a: c级/A4L/3以最低价格购买哪个?

下一篇

【奔驰c级是什么排放标准】没有像2021年美国版梅赛德斯-奔驰C级:1.5T这样的低级发动机

【新大洲本田pem-f1】50度电机电气问答,学完了吗?

【新大洲本田pem-f1】50度电机电气问答,学完了吗?

新大洲本田pem-f1相关介绍,1三相异步电动机的旋转磁场是如何产生的? 答:在三相异步电动机的定子三相对称绕组中加入三相对称电流,并根据三相对称电流的瞬时电流分析产生的磁场。因为三相对称电流的大小和方向根据正弦规律而变化。由三相对...