机器学习实验机器

攒机心得

近来想做做Kaggle比赛,学学如日中天的Deep learning跑跑实验,鉴于手头最好的机器是12年的rMBP,于是萌生了配一台机器的想法。经过了大概五天的研究,最后敲定的大概就是这个配置:

  • CPU:
    Intel Xeon E5 2620 v4 2.1GHz
  • GPU:
    ASUS GeForce GTX 1080 A8G ROG Strix
  • Motherboard:
    GIGABYTE X99-Ultra Gaming
  • Memory:
    CORSAIR 32GB (2 x 16GB) DDR4 3000
  • Computer Case:
    Corsair Carbide Series Air 540
  • Power Supply:
    EVGA SuperNOVA 1000W P2
  • Hard Drive:
    Crucial MX300 SSD 750GB
  • CPU Cooler:
    Noctua NH-U12S

内存:由于以后可能扩64GB,先买两条16GB的用着。如果说32GB足够用的话,实际上买8GB x 4更好。海盗船家还有几款稍微贵一点点的,但是看起来区别就是有个灯更酷炫了。至于内存频率,查了下好像只要主板支持就可以,看了下3000就比2400的贵20刀不到,就买了3000的。

CPU:需要注意的是PCIE lane数,这个数值如果低了,组SLI比较不便,至少也应该是28 lanes,最好是40。当然如果不考虑3路或者4路SLI,那么28也足够了(而且28也可以组3路,8+8+8)。虽然总的来说,对于Deep learning来说,CPU基本没什么影响,但是传统模型主要还是靠CPU,所以这里也不能太省。

最开始看CPU的时候还是去找i7,结果发现Broadwell-E架构下,得买i7 6850k才有40 lanes (610 USD),i7 6800k (440 USD)只有28 lanes。后来发现Xeon E5的性价比还是挺高的,最后锁定两款 1. Xeon E5 1620 (315 USD) V4 2. Xeon E5 2620 V4 (450 USD)。前者四核高频,后者八核低频大Cache,都是40 lanes。由于1620 V4哪儿都缺货,而且八核心比高主频对我更有用点,最后就决定买2620了。事实上,2620 Turbo一下,主频可以到3.0。如果对8核心没有需求的话,目前市面上1620 V4可能是40 lanes最具性价比的选择了。

CPU Cooler: CPU cooler虽然看起来不起眼,但是还是相当重要的,而且价格也真心不便宜。其种类大概能分为4-5种,目前比较靠谱的选择主要有两种:Liquid Cooler和加风扇的Pipe Cooler。前者顾名思义,是不停的让液体循环导出热量来给CPU降温,后者主要靠热管导热然后靠风扇扇出去热量。但是要注意的是,最然Liquid cooler看起来非常cool,其散热效率和噪音并不一定就比Fan+heatpipe的组合好,尤其是低价的Liquid Cooler。经过一番研究,基本圈定了几个选择: 1. Cooler Master Hyper 212 Evo (33 CAD) 2. Noctua NH U12S (79 CAD) 3. Corsair H100i V2 (119 CAD)。前两个是Fan+Pipe组合,最后一个是水冷,三个口碑都很好。最后我折中买了Noctua NH U12S。 多说几句,Fan+Pipe组合里公认的最强散热就是Noctua家的,他家的D14/15散热效果据说可以好过/媲美Corsair H100i,而且还更安静。除了D14/15这种庞然大物,NH U14S也是不错的选择,但是由于官网上说U14S会盖住我的主板第一个PCIE,于是就放弃了,选择了次之的U12S,但愿够用吧。Noctua家很良心的一点是,会把其风扇和各种品牌型号的主板兼容情况全列在其官网上,非常全面。

Motherboard:要注意与CPU的兼容问题,一开始选了ASUS X99-A II,根据官网提供的CPU支持列表,这个主板并不兼容Xeon E5 2620 V4或者1620 V4。(实际上由于Socket一致,倒是也有可能兼容,或者以后BIOS更新一下就兼容了,但是官方的support list上没有)由于主板和CPU都是只换不退的,买回来不兼容就赔大了,最后主板换了Gigabyte针对Broadwell-E新出的Ultra Gaming,看了下评价还不错,官方也支持2620 V4。某个主板兼容哪些CPU这种信息,主板官网上基本都能找到。

GPU:品牌方面,ASUS还是比较靠谱的选择,最近1080刚出,除了显存只有8GB外,其他方面都还比较理想。ASUS 1080大概有三个版本,O8G,A8G和普通的,这三者主频自高到低。自然,有钱的话O8G最好,但是O8G比A8G贵100多刀。本来寻思咬咬牙买O8G,但是因为缺货只好作罢,结果下单了A8G之后O8G有货了…残念。

机箱:无脑选了N家DevBox同款机箱,应该还可以。

电源:鉴于短时间内我顶多上个双路,1000W基本绰绰有余了,3路可能有点捉急。如果想四路的话,1600才比较保险。不过上4路的土豪其实基本就已经是不用考虑预算的阶层了,什么都买顶配就行了。

以上都是一个上次攒机时间在2002年的人的research结果,难免疏漏…

装机成功

题外话

其实现在随着Azure和AWS越来越重视云计算,个人攒机可能已经不是个性价比很高的选择了。

GPU计算的话,AWS推出了三个新的GPU机器类型,归类在Accelerated Computing Instances下的P2系列,CPU使用Intel Xeon E5-2686v4,GPU使用NVIDIA K80 GPU(2,496 parallel processing cores and 12GiB of GPU memory),配置还是相当强劲的,价格也挺实惠。

Azure方面也好几个月前就放出风声要出GPU计算节点N-Series,消息源和资费在此,其CPU是E5-2690v3,GPU跟AWS一样是K80。不过N-Series到现在也没对工种开放使用,真是典型微软风格。

你要问我为什么还是选择自己攒机?可能还是有一颗瞎折腾的心吧。

参考资料: