zoukankan      html  css  js  c++  java
  • 深度学习机器

    一、硬件之间的关系

    主板:就是提供配件插口的硬件,还有很多的电脑接口都在主板上。如果说电脑是一个拼图, 那么主板就是一个拼图的壳子,通过它才能把其他的东西拼上去。主板是链接各个部件的基础通道,不同的部件,使用的通道(总线)不同。

    CPU:插在主板上的电脑的核心组建,一个电脑配置的关键道具,负责各种逻辑运算。

    硬盘:插在主板上的电脑里面存贮文件的硬件,我的电脑里面的 C D E F 盘 其实就是硬盘, 只不过分了很多分区,你可以理解成硬盘就是电脑上一个不能直接拔下来,也必不可少的U盘

    内存条:插到主板上 CPU的助手,运行程序时,存贮正在运行的程序所用到的空间,比如变形金刚3的电脑特效“一个擎天柱有一万多个组件”,电脑处理时不仅需要强大的硬盘,还需要很大的内存,好像是64G,因为处理时 系统都必须随时能读取到擎天柱的那么多组件,如果内存不够,自然就会卡,影响电影的效率。

    显卡:插在主板上,也是CPU的助手,由于功能比较特殊,所以现在是独立显卡。但是仍然属于CPU的手下,你运行游戏的时候,很多图形需要处理,CPU自然就吃不消,显卡就是一个具体问题具体分析的硬件,专门处理这些图形,好让你玩那些游戏更加流畅,显卡也有内存,除了存储的是图形以外,其他跟内存差不多。

    显示器:主要听从显卡的指挥,显卡上提供插口,接受并翻译显卡输出的信号成为图像,供你直接用眼睛看到。

     

    参考:https://zhidao.baidu.com/question/528455612.html

    二、PCIE

    现在市面上主流的显卡都是PCI-E插槽。也就是说,若你的主板是PCIE插槽,那么你随便买显卡就可以了。

    PCI E是新一代的总线接口,是第三代I/O总线技术。

    PCI-E采用了目前业内流行的点对点串行连接,比起PCI以及更早期的计算机总线的共享并行架构,每个设备都有自己的专用连接,不需要向整个总线请求带宽,而且可以把数据传输率提高到一个很高的频率,达到PCI所不能提供的高带宽。

    PCI Express的接口根据总线位宽不同而有所差异,包括X1、X4、X8以及X16(X2模式将用于内部接口而非插槽模式)。较短的PCI Express卡可以插入较长的PCI Express插槽中使用。PCI Express接口能够支持热拔插,这也是个不小的飞跃。

    参考:https://zhidao.baidu.com/question/184183577.html

    三、深度学习机器

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

    主板:

    一般来说单块的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路。

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

    显卡:

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

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

      

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

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

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

    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)

    机箱

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

    电源

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

    散热

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

    内存

    内存条的大小也要根据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与手动超频效果基本无异,所以可将其看作为内存的自动超频技术。

    存储

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

    显示器+鼠标+键盘

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

    结束语:

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

    填坑补充:

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

    参考:https://www.cnblogs.com/xuliangxing/p/7543977.html

  • 相关阅读:
    Java 8系列之重新认识HashMap
    java的4种引用 强软弱虚
    在java中为什么要把main方法定义为一个static方法?
    JAVA里面的“指针”
    Java中,一切皆是对象!为何数据类型中还分为:基本类型和对象?
    Java集合类框架的基本接口有哪些?
    线程安全 同步方法 同步锁 同步代码块
    static变量 方法 类 和final
    轻松理解数字签名和数字证书的关系
    SSL身份认证原理
  • 原文地址:https://www.cnblogs.com/guo-xiang/p/9491366.html
Copyright © 2011-2022 走看看