DC/OS深度学习教程(一):TensorFlow、Nvidia与Apache Mesos(DC/OS)

栏目: 后端 · 发布时间: 7年前

内容简介:DC/OS深度学习教程(一):TensorFlow、Nvidia与Apache Mesos(DC/OS)
作者: Kevin Klues and Suzanne Scala, Mesosphere
译者:宋子豪,Apache Mesos PMC/Committer,现任Mesosphere分布式系统工程师,自2015年起专注于Mesos容器领域的开发,主要参与贡献了Unified Containerizer、Pods等关键性功能。宋子豪毕业于加州大学圣巴巴拉分校,计算机工程硕士。目前关注云计算及分布式系统。

责任编辑:孙浩峰  关注云计算、大数据、运维、安全  投稿信箱:sunhf@csdn.net

DC/OS 1.9介绍了基于GPU的任务编排新特性。有赖于GPU的支持,数据中心用户可以共享集群资源以运行传统任务及机器学期任务,同时,动态分配或回收集群的GPU资源。通过使用一些现今流行的机器学习软件库(如TensorFlow、Nvidia Docker),数据科学家们可以在自己的笔记本电脑对应用或模型进行本地测试,在不需要对应用或模型进行任何改动的前提下,直接部署至基于DC/OS的生产环境中。想了解关于此项技术的更多细节及如何基于Mesosphere DC/OS使用这项技术,请阅读以下文档。

●DC/OS深度学习教程(一):在本地运行一个TensorFlow的 Docker 镜像及运行一个机器学习模型(使用或不使用GPU)。

●DC/OS深度学习教程(二):在DC/OS集群中运行一个TensorFlow的Docker镜像(使用或不使用GPU)。

●DC/OS深度学习教程(三):在DC/OS集群通过Universe部署一个动态分布式的TensorFlow服务。请观察TensorFlow如何在DC/OS集群上动态地使用和释放资源。同时,在同一集群上运行多个有不同资源需求的TensorFlow服务。

TensorFlow教程 #1

在此教程的第一部分,我们会以在本地机器上运行卷积神经网络为例,然后使用nvidia-docker和GPU来为这个TensorFlow任务加速。TensorFlow是一款机器智能的软件库,其架构设计独到之处在于与GPU的契合,以提高计算速度和使用效率。

点此链接 看本教程视频。

前提条件

请保证Docker已安装在本地机器。

现在开始

首先,我们会不使用GPU运行TensorFlow,并为任务结果计时。

1.在本地机器上不使用GPU运行TensorFlow。

 

docker run -it tensorflow/tensorflow bash 

2.为了测试TensorFlow,我们需要下载一个机器学习模型。您可以从这个github repo中找到一些好的例子。我们会先通过apt-get安装git,然后拷贝示例repo。


apt-get update; apt-get install -y git
git clone https://github.com/aymericdamien/TensorFlow-Examples

3.现在我们有了卷积网络示例,运行它并为结果计时。

 

cd TensorFlow-Examples/examples/3_NeuralNetworks 

time python convolutional_network.py 

此过程大约耗时3分钟。

使用GPU运行TensorFlow

现在,我们来看看使用GPU有什么不同。

注:这部分将不适用于Mac OSX,因为nvidia-docker不支持OSX。

1.在terminal开一个新的窗口,以观察接下来使用nvidia-docker的结果有什么不同。

2.请确保已经在您的系统中安装最新的CUDA驱动。您可以从这里下载: https://developer.nvidia.com/cuda-downloads 。在我们写这篇博客的时候,版本8.0是最新版。

3.下载并安装nvidia-docker: https://github.com/NVIDIA/nvidia-docker

4.确认您的nvidia-docker安装成功。

 

nvidia-docker run --rm nvidia/cuda nvidia-smi 

nvidia-docker run --rm nvidia/cuda:7.5 nvidia-smi 

5.通过nvidia-docker,使用GPU来运行TensorFlow。

 

nvidia-docker run -it tensorflow/tensorflow:latest-gpu bash 

6.安装git并下载TensorFlow-Examples,跟您在之前的步骤里做的一样。

apt-get update; apt-get install -y git

git clone https://github.com/aymericdamien/TensorFlow-Examples

7.运行跟之前一样的卷积网络示例。

 

cd TensorFlow-Examples/examples/3_NeuralNetworks 

time python convolutional_network.py 

此过程大概耗时30秒:比单纯使用CPU快将近10倍。使用GPU的好处,一目了然。

使用多个GPU会有什么影响?

1.当我们走到这一步,可以快速地使用多个GPU来运行单一任务,并观察性能上的区别。

 

cd ../5_MultiGPU 

time python multigpu_basics.py 

结果必须是更快!

原文链接: https://dcos.io/blog/2017/tutorial-deep-learning-with-tensorflow-nvidia-and-apache-mesos-dc-os-part-1/index.html

MesosCon北京将于6月20日到22日在北京国家会议中心举行。这是 Linux 基金会主办的一年一度的Mesos盛会。报名详情请见 这里 ,购票记得使用7折优惠码MCA1730。


以上所述就是小编给大家介绍的《DC/OS深度学习教程(一):TensorFlow、Nvidia与Apache Mesos(DC/OS)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

冒号课堂

冒号课堂

郑晖 / 电子工业出版社 / 2009-10 / 65.00元

《冒号课堂》以课堂对话的形式,借六位师生之口讲述编程要义。上篇对编程范式作了入门性的介绍,并对一些流行的编程语言进行了简评;下篇侧重阐发软件设计思想,其中在范式上以OOP为主,在语言上以C++、Java和C#为主。全书寓庄于谐,深入浅出,既可开阔眼界,又能引发思考,值得编程爱好者品读。一起来看看 《冒号课堂》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具