一、硬件采购

  近年来,人工智能AI越来越多被人们所了解,尤其是AlphaGo的人机围棋大战之后,机器学习的热潮也随之高涨。最近,公司采购了几批设备,通过深度学习(TensorFlow)来研究金融行业相关问题,学习机器学习我们需要满足一定的硬件要求,本文主要是介绍硬件选购的相关事宜。

  现在主力的深度学习都是通过多显卡计算来提升系统的计算能力,所以硬件的采购核心是显卡(GPU),下面是整个硬件采购的清单及大致费用如下:

  以上的配置一台设备的总共费用大致:2.8W左右。公司购买了2台,费用大致6W,两台设备的研究方向不一样。本来设备这些东西按理说应该是越来越便宜才对,但是这几年恰恰相反(%>_<%),尤其这两年比特币大热(大学那会到现在,翻了一千多倍,千金难买早知道~~),很多人都买显卡专业挖矿去了,一度导致显卡热销,经常断货,价格也自然水涨船高。不仅如此,内存这两年价格几乎至少翻了一倍以上,两年前DDR4的8G内存最低200不到,现在像样点的都至少500以上(现在不流行囤金银了,改为囤内存条了),SSD和机械硬盘也涨了不少,记得那年福岛地震和东南亚洪水之后,供应商工厂受损,价格貌似就没有再降下来过。这些都是题外话,我们言归正传,以上的价格仅供参考。

  其实京东上面也有不少DIY定制的一套深度学习的服务器配置,不过主要也是分为两种:一种是至强E系列双CPU带4路GPU,还有一种是I7的CPU待2路GPU。

图1、至强 E5双路/4路GPU

图2、i7 6850K/GTX1080TI双卡(水冷)

  可能有些人有疑问,为什么单I7不能带四路GPU,而是需要双路CPU,其实也有单CPU带4路GPU的特例,这个在下文会解释


1、主板

  一般来说单块的GPU显卡占用16条PCIE通道,如果想配置4块的话,那么则需要16*4=64条PCIE通路。而我们选择常见的I7的CPU最高也只有40条PCIE通路,理论上来讲需要2块CPU实现双通道处理。上面京东上大多数都是这种配置模式,当然,如果我们不想使用双路CPU的话,要想实现单CPU支持16*4PCIE通道,目前只有Asus X99-E WS/USB 3.1,唯一 一块主板可以实现PCIE通路的拓展。所有如果有人想使用单个I7带4路GPU的话,那主板只能选择这一款了。推荐使用这一款,为了后期方便扩展,我们可以暂时只买1路或者2路GPU,后期可以扩至4路。  


 2、CPU

  CPU的选购也是需要适配主板型号,为了支持上述的ASUS X99-E WS USB3.1主板,CPU为LGA2011-v3系列,同时支持最高40条PCIE通道。而且我们系统主要使用CPU显卡进行计算,CPU的核心数并不重要,只要拥有相对较高的主频就可以,因此对CPU的要求其实并不是很高。这我们选择主频相对较高的i7-6850K(不带核显),也可以选择相对较低点主频的i7-5930K。具体根据实际情况选购,预算多一点的,可以选择更好的。

  


3、显卡GPU

  其实显卡才是我们的主角,我们的核心计算都是需要依托GPU计算的,当然并不是所有显卡都可以的,我们需要能够支持CUDA平台(一种由NVIDIA推出的通用并行计算架构)的GPU才行,实际上也只有部分高端NVIDIA显卡才支持此功能,NVIDIA也可以查询的到具体的支持列表,大家可以前往查询——>传送门

  其实我们的另一个主角TensorFlow对GPU也是有要求的

  

  基本上深度学习主机主要可选为:Titan Xp、1080Ti、Titan、1060与Tesla系列,深度学习模型对参数精度要求并不高,因此除非土豪,可以排出Tesla系列显卡。在预算充足的情况下,1080Ti是目前最佳的选择。在显卡的选购过程中,肯定会遇到公版与非公版的选择问题,这也是为什么上面购物清单里特意标注说明的。虽然非公版的散热较好,且自带超频,但考虑到系统的稳定性与兼容性,建议还是选择公版显卡,毕竟我们是用来研究的,还是一个毕竟严谨些。另外非公版显卡还可能会遇到显卡太厚主板放不下的问题。购买方面,大家如果方便,海淘也是一个不错的选择

  Tim Dettmers博客也分析过主流的GPU成本效益,大家可以去看看他的博客介绍——>传送门

  

  Normalized cost efficiency of GPUs which takes into account the price of other hardware. Here we compare a full machine, that is 4 GPUs,

  along with a high end hardware (CPU, motherboard etc.) worth $1500.

  在他的博客当中,也给出了他个人的购买意见

TL;DR advice
Best GPU overall (by a small margin): Titan Xp
Cost efficient but expensive: GTX 1080 Ti, GTX 1070, GTX 1080
Cost efficient and cheap: GTX 1060 (6GB)
I work with data sets > 250GB: GTX Titan X (Maxwell), NVIDIA Titan X Pascal, or NVIDIA Titan Xp
I have little money: GTX 1060 (6GB)
I have almost no money: GTX 1050 Ti (4GB)
I do Kaggle: GTX 1060 (6GB) for any “normal” competition, or GTX 1080 Ti for “deep learning competitions”
I am a competitive computer vision researcher: NVIDIA Titan Xp; do not upgrade from existing Titan X (Pascal or Maxwell)
I am a researcher: GTX 1080 Ti. In some cases, like natural language processing, a GTX 1070 or GTX 1080 might also be a solid choice — check the memory requirements of your current models
I want to build a GPU cluster: This is really complicated, you can get some ideas here
I started deep learning and I am serious about it: Start with a GTX 1060 (6GB). Depending of what area you choose next (startup, Kaggle, research, applied deep learning) sell your GTX 1060 and buy something more appropriate
I want to try deep learning, but I am not serious about it: GTX 1050 Ti (4 or 2GB)
(直接google翻译,哈哈)

 整体最佳GPU(由小幅度):Titan Xp的
 成本有效的,但昂贵的:GTX 1080的Ti,GTX 1070,GTX 1080
 成本高效和廉价的:GTX 1060(6GB)
 我的数据集> 250GB工作:GTX泰坦X(麦克斯韦) ,NVIDIA Titan X Pascal,或NVIDIA Titan Xp
 我有一点钱:GTX 1060(6GB)
 我几乎没有钱:GTX 1050 Ti(4GB)我做Kaggle:任何“正常”比赛GTX 1060(6GB)或GTX 1080 Ti为“深度学习竞赛”
 我是一名有竞争力的计算机视觉研究员:NVIDIA Titan Xp; 不要从现有的Titan X升级(Pascal或Maxwell)
 我是研究员:GTX 1080 Ti。在某些情况下,如自然语言处理,一个GTX 1070或GTX 1080也可能是一个坚实的选择-检查你的现有机型的内存需求我想建立一个GPU集群: 这确实是复杂的,你可以得到一些想法
 这里我开始深入学习,我很认真:从一个GTX 1060(6GB)开始。根据您下一步选择的区域(启动,Kaggle,研究,应用深度学习)销售您的GTX 1060并购买更适合
 我想要深入学习的东西,但我并不太在意:GTX 1050 Ti(4或2GB)

  

  下面是购买的MSI的2块1080ti的显卡

  


4、机箱

  选择NVIDIA® DIGITS™ DevBox同款机箱,大多数深度学习用户都是使用这款机箱(他们也给我们推荐了自己的配置,大家可以参考下),我们也是采购这一款,值得推荐哦

  

   


5、电源

  其实电源也是很重要的,尤其是其功率上,毕竟如果扩至4路的话,24小时不间断运作的话,还是相当耗电的,如果你想以后扩至4路的话,1600w足够了,这玩意24小时不关机,一个月下来还是挺费电的(就当是沉淀成本,O(∩_∩)O哈哈~),这个还是根据自己实际情况来,但是唯一的原则是:功率要超过所有硬件设备的总功率,要不然带不起来的。


6、散热

  散热的话,大家可以选择水冷或者风冷,纠结之后还是选择了水冷,最终选择了一款(美商海盗船( Corsair)Hydro系列 高性能 水冷 CPU散热器 全平台支持 H100i V2 240mm)的水冷散热,后期发现的确是超静音的,噪音特别小,选择水冷的话建议将冷排安装在AIR540机箱的顶端,这样可以避免顶端进灰。如果有人担心水冷过了保质期之后会漏水,也可以选择风冷的。


7、内存

  内存条的大小也要根据CPU来购买的,因为I7-6850K默认主频2400MHz,开启XMP之后,自动超频为3200MHz。因此建议购买DDR4 3200MHz内存条(2条16x2),如果不知道XMP,可以自行搜索了解下。

  XMP是Extreme Memory Profile的缩写,是Intel在2007年9月提出的内存认证标准,适用于DDR3和DDR4。简单的说,通过了英特尔XMP认证的内存,SPD中有两个或更多频率设定档案,只要在主板中启用这些预设的XMP档案,即可将内存条自动超频到1600或更高值(根据档案设定而定)。XMP与手动超频效果基本无异,所以可将其看作为内存的自动超频技术。


8、存储

  建议搭配SSD(固态硬盘)和HDD(机器硬盘)结合使用,SSD用作系统盘,HDD用作仓储,建议SSD至少250G,机器硬盘现在标配也是至少是1T了。一般SSD安装Windows和Linux双系统,而机械硬盘就可以当做双系统的公共挂载盘。我们买的半高的SSD,如图所示。

  


9、显示器+鼠标+键盘

  这三个没有特别要求,能用就行,这里不做多介绍,可以自行决定。提醒下,由于主板已经不支持VGA接口,只支持DP和HDMI接口,所有也得买个VGA转DP接头或者VGA转HDMI接头,


10、成品展示

  下面是已经组织好的硬件设备

 

结束语:

  以上主要是配置深度学习硬件大致介绍,剩下的就是主机的组装了,和传统台式机组装过程是一样的,这里不做讲解。大家可以根据自己的实际情况,适当配置最符合自己要求的硬盘配置,最后建议大家最好按照双系统,Windows和Ubuntu,这样便于工作区间的切换。

填坑补充:

  安装系统的时候,直接用U盘安装或者PE安装都不行,必须要拿一张低端的N卡去点亮(我是拿了一个低配的N卡才安装上系统的,费了好大牛劲了才发现这个问题~~),这个在下篇讲解安装系统的时候会讲到

  PS:如有疑问,请留言,未经允许,不得私自转载,转载请注明出处:http://www.cnblogs.com/xuliangxing/p/7543977.html

  本文主要参考博客:http://timdettmers.com/ (这是老外的博客,对配置深度学习硬件很有借鉴意义)

深度学习(TensorFlow)环境搭建:(一)硬件选购和主机组装的更多相关文章

  1. Ubuntu16.04深度学习基本环境搭建,tensorflow , keras , pytorch , cuda

    Ubuntu16.04深度学习基本环境搭建,tensorflow , keras , pytorch , cuda Ubuntu16.04安装 参考https://blog.csdn.net/flyy ...

  2. 人工智能之深度学习-初始环境搭建(安装Anaconda3和TensorFlow2步骤详解)

    前言: 本篇文章主要讲解的是在学习人工智能之深度学习时所学到的知识和需要的环境配置(安装Anaconda3和TensorFlow2步骤详解),以及个人的心得体会,汇集成本篇文章,作为自己深度学习的总结 ...

  3. ubuntu 深度学习cuda环境搭建,docker-nvidia 2019-02

    ubuntu 深度学习cuda环境搭建 ubuntu系统版本 18.04 查看GPU型号(NVS 315 性能很差,比没有强) 首先最好有ssh服务,以下操作都是远程ssh执行 lspci | gre ...

  4. 深度学习开发环境搭建教程(Mac篇)

    本文将指导你如何在自己的Mac上部署Theano + Keras的深度学习开发环境. 如果你的Mac不自带NVIDIA的独立显卡(例如15寸以下或者17年新款的Macbook.具体可以在"关 ...

  5. 第一节,windows和ubuntu下深度学习theano环境搭建

    先讲解windows下深度学习环境的搭建 步骤一  安装Anaconda Anaconda是一个用于科学计算的python发行版,支持linux,mac,windows系统,提供了包管理和环境管理的功 ...

  6. 解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境

    原文地址:解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境 0x00 配置 硬件 OS: Ubuntu 18.10 Base Board: ASUS WS ...

  7. 深度学习 GPU环境 Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 环境配置

    本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 ...

  8. supervessel-免费云镜像︱GPU加速的Caffe深度学习开发环境

    开发环境介绍 在SuperVessel云上,我们为大家免费提供当前火热的caffe深度学习开发环境.SuperVessel的Caffe有如下优点: 1) 免去了繁琐的Caffe环境的安装配置,即申请即 ...

  9. 从零开始在ubuntu上配置深度学习开发环境

    从零开始在ubuntu上配置深度学习开发环境 昨天一不小心把原来配置好的台式机的开发环境破坏了,调了半天没有调回来,索性就重装一次ubuntu系统.这篇文章主要记录一个简单的.‘傻瓜式’教程. 一.U ...

随机推荐

  1. DesignMode的重载 C#

    也就是说一个控件只有在它自己被拖拽到设计器的时候,其 DesignMode 才是真,如果它被包含在其他控件中被加入到设计器,那么那个控件才是在设计模式,而它不是!换句话说,DesignMode 并不能 ...

  2. 关于iphone6/5/4s 在iOS8.0系统下 仅仅读@3x图片

    做iphone6和plus适配时候发现一个问题,先来看图(一下讨论所有在真机下完毕,非模拟器) 128*750图片是  nav@2x.png watermark/2/text/aHR0cDovL2Js ...

  3. [Android Pro] Android P版本 新功能介绍和兼容性处理(三)Android Studio 3.0 ~ 3.2 其他特性

    cp : https://blog.csdn.net/yi_master/article/details/80067198 1:JAVA8特性支持 1)Base64.java 在升级到as3.0之后, ...

  4. logback身份证脱敏

    logback身份证脱敏 学习了:https://shift-alt-ctrl.iteye.com/blog/2425469 https://blog.csdn.net/fywfengyanwei/a ...

  5. GraphQL循环引用的问题

    下面的代码中, 由于friends字段引用了PersonType字段,而friends本身又是PersonType的一部分,在运行的时候会报错: Expected undefined to be a ...

  6. 解决nginx access日志中400 bad request 错误(转)

    在access.log中有大量400错误,并以每天几百M的速度增加,占用大量空间.tail -f /opt/nginx/logs/access.log 116.236.228.180 - - [15/ ...

  7. dup2替换

    今天看APUE上一道题,要求不能用fcnt1来替换dup1. 刚开始的思路是dup一个,测试发现与期望的不一致就马上关闭,发现遇到无限循环,刚才想了下,才发现一旦close掉,再次dup仍然是分配最小 ...

  8. python排序出现的问题以及解决方案

    对某个文件夹中的文件重命名的时候,发现有些文件丢失,代码如下: #coding=gbk # Findthe every dir, if 01.rm exist in it, then rename i ...

  9. C#字符串转换为float

    1.解决不同计算机上,区域和时间不同而引起的转换问题(如:“123.456”报“字符串格式不正确”问题) //解决区域.语言变更引起的“识别不出小数点问题”如:转换时“123.456”转换时不认识&q ...

  10. 为何float有效位数为7位?

    为何float有效位数为7位? 首先我们应该明确一点:C语言中,%f表示保留7位有效数字7位有效数字: 是指 整数部分 和小数部分一共7位 单精度数的尾数用23位存储,加上默认的小数点前的1位1,2^ ...