diff --git "a/MarkDown/\347\254\254\345\215\201\344\272\224\347\253\240_GPU\345\222\214\346\241\206\346\236\266\351\200\211\345\236\213.md" "b/MarkDown/\347\254\254\345\215\201\344\272\224\347\253\240_GPU\345\222\214\346\241\206\346\236\266\351\200\211\345\236\213.md" index ba225b04..6a577224 100644 --- "a/MarkDown/\347\254\254\345\215\201\344\272\224\347\253\240_GPU\345\222\214\346\241\206\346\236\266\351\200\211\345\236\213.md" +++ "b/MarkDown/\347\254\254\345\215\201\344\272\224\347\253\240_GPU\345\222\214\346\241\206\346\236\266\351\200\211\345\236\213.md" @@ -1,10 +1,10 @@ -# 第十七章 GPU和框架选型指南 +# 第十五章 GPU和框架选型指南 -## 17.1 GPU购买指南 +## 15.1 GPU购买指南 深度学习训练通常需要大量的计算资源。GPU目前是深度学习最常使用的计算加速硬件。相对于CPU来说,GPU更便宜且计算更加密集。一方面,相同计算能力的GPU的价格一般是CPU价格的十分之一。另一方面,一台服务器通常可以搭载8块或者16块GPU。因此,GPU数量可以看作是衡量一台服务器的深度学习计算能力的一个标准。 -### 17.1.1 如何选择GPU +### 15.1.1 如何选择GPU ### 首先给出一些总体的建议 最好的GPU整体(小幅度):Titan Xp 综合性价比高,但略贵:GTX 1080 Ti,GTX 1070,GTX 1080 @@ -36,7 +36,7 @@ Nvidia有面向个人用户(例如GTX系列)和企业用户(例如Tesla系 Nvidia一般每一两年发布一次新版本的GPU,例如2017年发布的是GTX 1000系列。每个系列中会有数个不同的型号,分别对应不同的性能。 -### 17.1.2 GPU的主要性能指标 +### 15.1.2 GPU的主要性能指标 GPU的性能主要由以下三个参数构成: 1. 计算能力。通常我们关心的是32位浮点计算能力。16位浮点训练也开始流行,如果只做预测的话也可以用8位整数。 @@ -63,7 +63,7 @@ GPU的性能主要由以下三个参数构成: 所以如果你想购买一个快速的GPU,首先要关注的是GPU的带宽(bandwidth)。 -### 17.1.3 整机配置 +### 15.1.3 整机配置 通常,我们主要用GPU做深度学习训练。因此,不需要购买高端的CPU。至于整机配置,尽量参考网上推荐的中高档的配置就好。不过,考虑到GPU的功耗、散热和体积,我们在整机配置上也需要考虑以下三个额外因素。 @@ -72,7 +72,7 @@ GPU的性能主要由以下三个参数构成: 3. 主板的PCIe卡槽。推荐使用PCIe 3.0 16x来保证充足的GPU到主内存的带宽。如果搭载多块GPU,要仔细阅读主板说明,以确保多块GPU一起使用时仍然是16x带宽。注意,有些主板搭载4块GPU时会降到8x甚至4x带宽。 -### 17.1.4 小结 +### 15.1.4 小结 * 在预算范围之内,尽可能买较新的GPU。 * 整机配置需要考虑到GPU的功耗、散热和体积。 @@ -104,11 +104,11 @@ GTX 1050 Ti一般来说也是一个不错的选择,如果你只是想尝试一 -## 17.2 框架选型 +## 15.2 框架选型 目前常用的框架有tensorflow,keras,pytorch,mxnet等等,各个框架的优缺点在此简单介绍: -### 17.2.1 常用框架简介 +### 15.2.1 常用框架简介 1,tensorflow: tensorflow由于有google的强大背书,加上其优秀的分布式设计,丰富的教程资源和论坛,工业部署方便,基本很多人都是从tensorflow入门的 @@ -140,13 +140,13 @@ mxnet是dmlc社区推出的深度学习框架,在2017年被亚马逊指定为 优点:资源丰富,代码容易理解,部署方便 缺点:入门门槛高,文档较少 -### 17.2.1 框架选型总结 +### 15.2.1 框架选型总结 1,新手入门,首推pytorch,上手快,资源丰富,官方文档写的非常好(https://pytorch.org/tutorials/) 2,目前工业部署,tensorflow是首选,资源丰富,并且在分布式训练这一块基本一家独大 3,mxnet的gluon接口有比较丰富的中文资源(教程:zh.gluon.ai,论坛:discuss.gluon.ai),gluoncv模块(https://gluon-cv.mxnet.io),gluonNLP模块(https://gluon-nlp.mxnet.io) -## 17.3 模型部署 +## 15.3 模型部署 我们一般都是通过python或者其他语言来编码训练模型,然后基于后端来进行部署 一般的框架都有自身的部署框架,比如tensorflow,pytorch,caffe2,mxnet等等 有一些框架是专门做推理部署使用的,比如