首页 > GPU云服务器 > 自建GPU服务器:搭建自己的深度学习PC

自建GPU服务器:搭建自己的深度学习PC

搭建自己的GPU服务器并不困难,这样做还可以轻松地降低在云中训练深度学习模型的成本。

很多深度学习的实践者们渴望在有生之年搭建自己的深度学习机器,摆脱云的魔掌,这样的时代就到来了。云计算是开展深度学习的理想选择,它往往是训练大规模深度学习模型的最佳答案。但是,在云计算和自建的深度学习机器之间还有一个广阔的空间,在这里你自己搭建的深度学习机器明显更具成本效益。

不是说它很便宜。你将在足以支持深度学习模型的计算机和高端GPU上花费1500到2000美元,甚至更高的价格。但是,如果你每次都要花数天时间进行广泛的模型训练,那么拥有自己的专用设备可以在三到四个月内回本——尤其是当你将计算时间与云存储和进入成本等因素都一起考虑时。

在本文中,我将逐步向你展示我今年早些时候搭建的深度学习机器,描述在建立这样一台机器时你会遇到的一些选择以及你可能要付出的成本。价格是自2017年12月以来亚马逊的直接报价。

如果你想进一步深探深度学习——无论是对大型数据集进行研究还是参加Kaggle比赛,或者两者兼而有之,搭建自己的深度学习机器都是非常有意义的。在你致力于庞大的数据集,并需要数十个GPU来进行培训之前,先在自己的机器上运行模型可能是最好的方法。

一旦你达到了这样的程度,云会再次成为你的朋友。你可能还需要一个有钱的朋友来支付所有的计算时间。

深度学习PC构建:GPU和CPU

决定使用哪种显卡,以及购买哪种GPU可能是构建自己的机器时要做的最重要(也是最昂贵的)决定。但当前,这个选择是相当容易的。假如你不会因700到900美元的价格而退缩,那么你应该购买英伟达的GeForce GTX 1080 Ti。英伟达的1080 Ti的性能不如它的新的Volta代的GPU,它们现在只出现在主要的云提供商中,但它足以满足你对Kaggle的所有需求。

1080 Ti是基于与英伟达最新的Titan X卡相同的Pascal架构,但它速度更快,成本更低。大量的内核(3584个内核)和大量的内存(11GB)意味着你可以运行更大的神经网络,并在1080 Ti上以快于目前市面上所有其它消费级显卡的速度训练它们。如果你想突破深度学习框的极限,那么使用你能买到的1000美元以下的最好的CPU是有意义的。

1080 Ti有Founder版(是英伟达的公版)或显卡制造商的定制版。这些卡通常会有多个散热器和(背离了他们的游戏初衷)超频GPU的设施。就个人而言,我对发热过渡有点偏执,所以选择了有三个散热器的价值895美元的显卡,但是你可以通过购买一张Founder版的显卡来节省100美元。

如果你觉得1080Ti的价格说不过去,那英伟达的GeForce GTX 1080是一个不错的备胎。它比1080 Ti慢,内存更少(8GB对11GB),但是它可以为你节省大约200美元。我想推荐AMD的新系列GPU,但是它们对PyTorch和Tensorflow等主流库的支持还不够。随着AMD继续开展ROCm工作,这个情况可能会在2018年发生变化,届时Radeon RX Vega Instinct和Frontier看起来会非常吸引人,特别当英伟达忽略从Volta平台上将其来自Volta平台的Tensor Core引入其消费级产品线。

尽管GPU将成为你的系统的主力,但你还需要一个功能强大的CPU来运行应用程序并处理数据工程任务(例如增强)。如果你有机会在未来扩展机器以包含多个GPU,那么你应该可以获得一个能够处理多达40条PCIe Express通道的CPU。第七代英特尔酷睿i7-7700K是一个不错的选择。你不必追求最新的技术,还有,你不需要神秘的水冷却或类似的东西。酷冷至尊的售价30美元的Hyper 212 EVO就不错了。

深度学习PC构建:存储和内存

现在,你可以豁出去花500美元购买1TB的M.2接口的固态硬盘。固态硬盘很棒,对不对?但想一想,在训练数据模型时,你不会使用所有的高速存储。在当前培训的“热”(固态硬盘)和非活动项目的“冷”(盘片)之间分配存储空间才能更有效地利用你的资金。一个2TB的硬盘将花费70美元左右,一个250GB的固态硬盘将花费130美元左右,让你以一半不到的价格拥有两倍的存储空间。

至于内存,我建议32GB,未来可能会进一步扩展到64GB,所以要购买16GB的内存条。你能看到的大多数主板都用DDR4内存。在DIMM插槽上插上两条16GB内存将花费你300到400美元。

深入学习PC构建:主板,电源和案例

现在你已经拥有了所有有趣的东西,你还需要一些相对枯燥的零部件来把所有东西组装在一起。如果你遵循我的建议,买了第七代英特尔CPU,那么你应选择一个基于Z270的主板。如果你因为喜欢闪亮的新东西而购买了第八代CPU,那么你需要一个基于Z370的主板。不要搞混了,因为第七代CPU不能在Z370主板上工作(仔细检查以确保你的主板和CPU是否兼容)。如果你认为未来可能会获得另一个GPU,请检查你选择的主板是否支持。在这里我没有遵循自己的建议,所以如果我决定添加第二块GeForce GTX 1080 Ti,我就需要升级主板。

电源可能是构建自己的机器最无趣的部分,但有一点需要记住的是,你将需要相当多的电力。花85美元你就能买到850瓦的电源,并给你一些扩展的空间。

现在,我上一次搭建的台式电脑已经是10几年前的事了,所以机箱的美好新世界,我完全没有做好准备。我并不期待闪闪发亮的LED、刺激的曲线、或者散热器,只要眼睛能看见就行。作为一名内敛人士兼英国人,我喜欢一个相当无聊的白色塔式设计,但它有侧透的玻璃窗。你要确保机箱有足够的空间来装满所有的零部件。散热器和显卡的突出部分都会比你想像的要高。如果你坚持要用标准的ATX全塔或中塔机箱也无妨。

深入学习PC的搭建:组装和软件安装

因为我已经有好多年没组装过个人电脑了,所以涉及到组装时我有点担心会不知所措。但是,你需要的只是一把像样的螺丝刀、防静电带和YouTube。对于系统的几乎每一个部分,都会有大量的在线演示视频,手把手教你怎么进行。视频真的一路指导我到固态硬盘和内存安装步骤,在这个步骤我要确保将内存插入主板时不会用力过猛而损坏内存芯片。

一旦你拥有了所有的东西,所有的指示灯都亮了,你将需要一个操作系统。你可以随便安装带Windows的双系统以便玩游戏,但你应该选择Linux来开展深度学习的任务。在撰写本文时,我建议使用Ubuntu 17.04,因为它的英伟达驱动程序的设置很简单(英伟达的下载页面还没有更新到Ubuntu 17.10)。在安装Linux之前要记住的一件事是进入你的机器的BIOS,确保它使用的是集成显卡,而不是1080Ti,否则在安装过程中会遇到问题。

按照Ubuntu的指南设置英伟达的驱动程序。另外,由于Tensorflow在1.5之前的版本都不支持CUDA 9,所以要从CUDA的网站上获取CUDA 8库。

对于Python,我推荐使用Anaconda。使用Anaconda安装Tensorflow和Keras就像使用以下这些命令一样简单:

conda install -c anaconda tensorflow-gpu

conda install -c anaconda keras

And PyTorch is almost as simple:

conda install pytorchtorchvision -c pytorch

另外,Anaconda默认安装了Jupyter,所以此时此刻,使用定制的深度学习机器所需要的东西,该有的你都有了。

深度学习PC的搭建:总成本

最后,让我们来看看这一切需要花费多少成本。我从亚马逊购买了所有的设备。你可能会使用Newegg或TigerDirect等网站找到更好的价钱,或者通过易趣查找二手零件。还有,你可以通过选择英伟达的Founder版或普通的GTX 1080卡在GPU上节省100美元或200美元。

自建GPU服务器:搭建自己的深度学习PC

在不到2100美元的价格(请记住,这还是税前价),深度学习的个人电脑肯定是一项重大的投资。但是如果你逐渐对月度云账单上的成本上涨感到不安,搭建自己的机器是否比在AWS、Google Cloud或微软Azure上启用GPU实例能更好地利用你的时间和金钱,这值得研究。至少我是赚回来了。

,可以参考云服务器的资料,