: 更新 :谢谢各位大大的建议,跟老板讨论过后预计朝请厂商报小型工作站
: 的单子,预算虽然说是没有问题但也可能没办法买[email protected]@,让电虾的
: 各位失望了
: 非常谢谢各位的建议,还请有点火气上来的前辈们消消气
原PO后来请厂商报小型工作站是聪明的决定
十万的单子还上来求建议 表示对硬件的了解度没有信心
虽然厂商也不一定懂
但让厂商全权开规格 之后有问题厂商可以协助处理
厂商能除错的资源还是比个人多些
上头的人追究下来也有个厂商负责
100万内的科研采购 虽然不用招标 但也总要有个厂商陪着跑文件
厂商多赚的钱就当服务费 省心
====
所以深度学习的机器到底要怎么买?
刚好最近有些采购 也略有研究
以下是个人心得 不一定正确 在此做个笔记记录
====
买电脑 第一先问预算 再问需求
但这次先问需求
真的需要一台GPU Server吗?
在PC上开发模型,真正的大量资料上AWS、Azure、GCP、国网中心的云端GPU做训练
如果这样的工作流不符合需求 (反正会有各种理由不行)
那也只好买台ML主机放地上了
如果预算没有上限 (好几个亿花不完)
直接请厂商送NVDIA DGX Pod来就可以了
http://tinyurl.com/y3k63fo2
Easy Deployment of DGX Servers for Deep Learning
超Easy
预算不到亿但超过千万
DGX-2就在预算内
https://www.nvidia.com/zh-tw/data-center/dgx-2/
但NVIDIA要求购买DGX-2的单位最好要先有DGX-1的经验
预算超过500万就能买一台DGX-1
https://www.nvidia.com/zh-tw/data-center/dgx-1/
预算200万上下你可以考虑买DGX Station
https://www.nvidia.com/zh-tw/data-center/dgx-station/
以上的价格都是我梦到的 详细数字请打电话问业务
如果对于NV原厂机的配置不够满意
想要更换CPU RAM想加大点 储存空间想调整
或是想把钱都砸在GPU 其他部分精简
DELL HPE都有多GPU系列机器可客制化
嫌国外一线厂牌太贵 国内的华硕、丽台也都有GPU Server可以挑
怕被厂商坑可以先上DELL或HPE的美国官网点点配置
大概有个行情概念
钱能解决的问题都不是问题 最大的问题是没有钱
没钱的实验室想买GPU Server来做深度学习
这时就要问情境了
是否愿意牺牲机器稳定性、资料正确性来换取效能??
实验室有多少人要用?
同时用还是排队用?
有没有专人管理维护服务器?
如果真的要自己进这个坑就继续吧
经验告诉我 多人同时使用一台GPU server体验很糟的
不只GPU是资源
CPU核心、CPU快取、PCIe频宽、内存频宽、内存容量、storage IOPS
全部都是瓶颈
8个人同时用一台8 GPU的server
就算一个人限制一颗GPU 8个人全部卡死
所以GPU server的使用情境是
- 训练资料量太大了 需要多张卡做多倍的加速
(举例:只能接受8张卡train 3小时 无法接受1张卡跑24小时)
- PC、HEDT的内存不够
- 需要超多核心的CPU算力来做计算前处理
这时候又有人能管理服务器(实验室成员排队不会吵架)
那可以买大台的server
一个人一个人轮流用 其他人只能等
推文里有人买2xTITAN RTX主机45万
若用不到512GB RAM或24GB VRAM或超多核心的算力
可以买5台9万的PC 能用同时用的人更多 算力也更高 (2 GPU vs 5 GPU)
====
最后才是考虑组装个人电脑来用
那组装深度学习的主机 零件怎么挑呢?
我不知道版上有多少人真的在深度学习
说不定我也没有玩过 上来唬烂一通
下面的解释都是心得 也不一定对 就当参考
CPU
有人说深度学习主机的CPU不重要
我不认为不重要
或者说 不重要不代表可以忽视
不然随便拿个i3或Xeon Bronze亮机就好
CPU快的主机还能拿来做其他运算
非深度学习无GPU加速的机器学习算法也可以跑
GPU运算是需要CPU送资料进去的
若CPU需要做些前处理 算力不够会导致资料产出速度不足导致GPU闲置
另一个就是PCIe频宽 多卡时有机会塞车
(推文有人问ML主机跟矿机差在哪
矿机基本上不需要PCIe频宽 一小段资料送进GPU爆hash出来
ML主机是大量的资料通过GPU 还有神经网络的权重更新问题
频宽需求不同)
CPU的算力若要在高频少核与低频多核间选一个
我会选高频少核 泛用性比较高
毕竟如果不是跑固定的商用软件或开源软件
很难确定平行化的效果如何
最后至少还有个单核硬上的选项
另外就是
我怀疑nvidia的驱动只有单核在跑 要是单核不够力 GPU会比较慢
以上是推测 没有直接证据
至于AMD CPU (先说明这是现在的状况 2019/7/7后会不会改变我不知道)
Zen架构与Skylake架构相比
浮点运算AMD就是弱势 (4个128bit 两个加法两个乘法 vs 2个256bit加乘皆可)
AVX 256bit AMD直接是Intel半速
更不用说要是程式用了Intel的编译器或数学库(MKL, MATLAB或numpy都会用到)
侦测到不是intel的CPU 直接执行相容性最高(最慢)的机器码
AMD的CPU遇到奥步很难跑得比INTEL的快
至于HEDT平台
9980XE与2990WX我手上都有
版上随便推人买2950X或2990WX是很不负责任的
我的建议是 除非你的程式在X399平台上测过真的比较快(或是一样快但比较便宜)
不然买intel真的比较不会有性能问题
商人不是笨蛋 18核的9980XE与32核的2990WX才会没什么价差
实际测试这两颗互有输赢
如果你的程式是
- 多核平行化得很好 单核慢没关系
- 有NUMA支援 不会卡RAM频宽或CPU之间
- 浮点不重要 AVX 512没差 且不会被intel软件奥步
那2990WX有机会赢 但还是建议要测过再购买
(不到6万就能体验4路不对称NUMA所带来的各种奇葩效能问题 超值)
RAM
通道插满 越大越好
做正事的机器不建议用超频内存 标准条很棒
2019年 内存需求超过64GB 只能选HEDT
超过128GB 只能选工作站
超过512GB 只能选Server
严格要求资料正确性请买ECC
MB
主流平台挑选跟一般开菜单一样
VRM散热与设计挑一下
要是VRM供电不足 可能连维持全核Turbo都有问题
其他没什么重点
HEDT平台要看一下PCIe通道设计
针对ML需求会不会塞车
每张卡至少要x8 塞在CPU端或GPU端都会有影响
CPU散热
i7-8700的原厂散热没有办法在烧机下维持全核Turbo 4.3GHz
真的垃圾
比原厂散热器好的都可以
GPU
重点来了
针对深度学习 第一要考虑的就是VRAM大小
VRAM决定了能放多复杂的模型下来算
(有人会说Unified Memory啊或是什么NVLink合并内存的
会自己写底层用这两个功能的人就不会上来问问题了
Tensorflow可以开Unified Memory拿主内存硬跑
代价是效能剩10分之一 [PCIe x16频宽约GDDR6 1/10]
NVLink自动合并内存 我还没看到Tensorflow或Pytorch有支援
至少我在V100上是开不出自动合并 会的人麻烦教学一下
手动将模型拆放在两张又不会卡频宽也是需要花时间调整的)
还有batch size能开多少(这个可以透过多卡增加)
如果只是玩票性质的深度学习
6GB VRAM应该都能试跑常见的模型
如果是拿来做事的
11GB VRAM的是首选
因此消费级能挑的卡有
11GB
1080ti
2080ti
12GB
GTX TITAN X
TITAN X
TITAN Xp
TITAN V
24GB
TITAN RTX
Quadro卡很贵 也没有特别快
除非你想买Quadro RTX 8000有48GB VRAM
不然光看规格 我找不到买Quadro RTX 6000而不买TITAN RTX的理由
(其实有 Quadro RTX 6000是鼓风扇 多卡散热比TITAN RTX好)
Tesla卡是被动散热没有风扇
都是跟着设计过的机架出货
就算搞到手装在一般机壳也是直接烧掉
如果要使用多卡 一定要用涡轮扇版本的强制排气
不然连跑几个小时 直接热死
再来要考虑的就是算力
如果会用半精度fp16训练(AMP之类的)
有Tensor Core的TITAN RTX、2080ti、TITAN V有绝对优势
(虽然2080ti的Tensor Core在fp16/fp32混和精度被老黄阉成半速 但还是很快)
只用fp32的话请直接看wiki Single precision字段
https://en.wikipedia.org/wiki/List_of_Nvidia_graphics_processing_units
TITAN V与TITAN RTX比较
TITAN V是HBM 某些吃VRAM频宽的模型计算速度上会快些
TITAN RTX的VRAM比较大且有NVLink
NVLink的效果 有帮助但没有很显著
Puget Systems上关于GPU跑深度学习的测试文都可以看看
https://www.pugetsystems.com/search.php?query=+Machine+Learning
TITAN V与TITAN RTX个人会选RTX
慢一点等就好 (没用Tensor core速度根本没差)
放不进VRAM连算都不用算
PCHome定价还比较便宜
Storage
都2019了 SSD必备吧
额外的硬盘、RAID或是NAS就看预算
另外NVMe组RAID 0不会增加随机读取IOPS 不要为了这个浪费钱
Power
如果放机器的地方没有220V
组4卡机器可能要考虑一下
1500W推4张TU102+CPU其实很拼
====
最后是菜单 线上随便点的 别真的拿去组
80K 深度学习文书PC
CPU (中央处理器):
Intel i9-9900K【8核/16绪】3.6GHz(↑5.0GHz)/16M/95W
15800
Cooler (散热器):
利民 Silver Arrow IB-E Extreme 8根导管(6mm)/双塔/高度16cm/TDP:320W
2890
MB (主机板):
华擎 Z390M Pro4【独家】(M-ATX/1A1D1H/I网/CNVi/十相/注四年+365天换新)
3590
RAM (内存):
KLEVV(科赋) 16GB DDR4-2666/CL16
4x1888 7552
VGA (显示卡):
技嘉 RTX2080Ti TURBO 11G(1545MHz/27.2cm/注四年)
36890
SSD (固态硬盘):
威刚 XPG SX8200Pro 1TB/M.2 PCIe 2280/读:3500M/写:3000M/TLC【五年保】附散热片
4380
HDD (硬盘):
Toshiba 6TB【企业级】128MB/7200转/五年保(MG05ACA600E)
5390
PSU (电源供应器):
全汉 圣武士 650W/铜牌/全日系/DC-DC/5年免费/CPU主线:18AWG
1990
====
300K 深度学习入门PC
处理器 CPU:
Intel i9-9980XE【18核/36绪】3.0G(↑4.4GHz)/24.75M/165W/无内显【代理盒装】
61000
主机板 MB:
华硕 WS X299 SAGE/10G(CEB/8*D4/双I网-10G/2*M.2/1*U.2/三年)
21900
内存 RAM:
美光 Micron Crucial 16G DDR4-2666
8x2099 16792
固态硬盘 M.2|SSD:
三星Samsung 970 PRO NVMe 1TB/M.2 PCIe 读:3500/写:2700/MLC/五年保
13500
传统内接硬盘HDD:
Toshiba 10TB【企业级】256MB/7200转/五年保(MG06ACA10TE)
9990
散热器|散热垫|散热膏:
利民 Silver Arrow IB-E Extreme 8根导管(6mm)/双塔/高度16cm/TDP:320W【VWX】
2890
显示卡VGA:
华硕 TURBO-RTX2080Ti-11G(1545MHz/26.9cm/注四年)
4x38990 155960
CASE 机壳(+电源):
海盗船 Carbide Air 540 黑 显卡长31/CPU高17/SSD*6(2共用)/E-ATX
4490
电源供应器:
全汉 CANNON 2000W 双8/全模/全日系/1年保固/六项保护/支援18组PCI-E 6+2PIN
12900
====
300K那组可再往上调整一阶成自组工作站
CPU可换Xeon W-2195
MB可换ASUS WS C422 SAGE/10G
RAM加到512GB
VGA换成4x Titan RTX
====
再往上就不要自组或白牌server了啦
验证也是要钱的 厂商的人力服务支援都是钱
更高阶的机器不是所有零件装上去就会动的
散热、供电、各零件相容性都是眉角
花了几百万经费买了不会动的机器 一定被教授砍死
这边都还只有讲到硬件
要是管理服务器的人
软件部分OS、CUDA driver等等设定无法自己来
还是要有个厂商在后面支援才好
啥都不懂买品牌机就对了