本文将围绕几个步骤来讲。

因为本人是MSP,微软送了150刀的额度给我随便使用。这篇文章是要讲将Azure用作云计算平台,对于我来说,我是做机器学习的,那么Azure就要有机器学习的平台。

本文的目的是,在Azure上搭建虚拟机,安装TensorFlow,在本地通过XShell进行远程连接。

===================================

1,在Azure上搭虚拟机

首先我们打开Azure。

之后点击右上角的Terminal,选择Bash,进行最初的准备。此时将会分配一个新的存储空间给你使用。

输入:

sudo pip install azure-cli

之后:

az login

接下来我们新建一个资源组用作管理,资源组选择EastUS。

az group create -n tensorflow -l EastUS

这个时候我们可能需要一个SSH密钥对,这个我们待会再说。

接下来我们新建一个虚拟机,选择左边的侧栏:

选择Ubuntu 16.04 LTS即可,之后按照自己需要的进行定制。

在第一步的时候可能需要你选择用户名或者SSH,此时建议先使用用户名,之后再禁用。

一切都配置完成之后,启动虚拟机:

az vm start -g tensorflow -n tensorflow

使用用户名密码登陆。


接下来我们安装CUDA8 + CuDNN 5.1. TensorFlow官方尚未支持CUDA9,所以我们暂时使用CUDA8.

wget https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64-deb
sudo dpkg -i cuda-repo-ubuntu1604---local_8.0.44-1_amd64-deb
sudo apt-get update
sudo apt-get install -y cuda
rm cuda-repo-ubuntu1604---local_8.0.44-1_amd64-deb

之后我们可以使用

nvidia-smi

查看GPU状态。

下一步安装CuDNN 5.1.

wget http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz
sudo tar -xzf cudnn-8.0-linux-x64-v5..tgz -C /usr/local
rm cudnn-8.0-linux-x64-v5..tgz
sudo ldconfig

最后添加进环境变量:

export CUDA_HOME=/usr/local/cuda-8.0
export PATH=${CUDA_HOME}/bin:${PATH}
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:/usr/local/cuda/lib64:${LD_LIBRARY_PATH}

因为我喜欢用Python3,所以我要另外装上Python3和对应的pip。

sudo apt-get install python3-setuptools
sudo easy_install3 pip

这样,你输入Python3,pip3会启动Python3,而输入python,pip会启动Python2.

之后安装TensorFlow r1.2(因为1.3版本需要CuDNN 6+)

sudo apt-get install -y  python3-dev
sudo pip install tensorflow-gpu==1.2

TensorFlow的安装完成。输入下列语句进行测试:

>>> import tensorflow as tf
>>> session = tf.Session()

当然,你可以随时离开虚拟机:

az vm deallocate -g tensorflow -n tensorflow

参考资料:

https://www.lutzroeder.com/blog/2016-12-27-tensorflow-azure/http://blog.csdn.net/silent56_th/article/details/77587792

http://blog.csdn.net/silent56_th/article/details/77587792

https://gist.github.com/diegopacheco/576ff74c2013ee79ea8060945b1e9a53

【充分利用你的Azure】将Azure用作云计算平台(1)的更多相关文章

  1. (转)Hprose与WCF在云计算平台Azure上的对决

    Windows Azure Platform是一个运行在微软数据中心的云计算平台.它包括一个云计算操作系统和一个为开发者提供的服务集合.开发人员创建的应用既可以直接在该平台 中运行,也可以使用该云计算 ...

  2. Azure架构(一):云计算基础

    云计算的定义 云计算(英语:cloud computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给使用各种计算终端(桌面电脑.笔记本电脑.平板电脑.手机等) ...

  3. [书目20140902]实战Windows Azure——微软云计算平台技术详解 --徐子岩

    目录第1章  云计算技术简介    1.1  云计算所要解决的问题    1.2  云计算平台的分类    1.3  微软云计算平台Windows Azure        1.3.1  高可用性   ...

  4. Azure Functions + Azure Batch实现MP3音频转码方案

    客户需求 客户的环境是一个网络音乐播放系统,根据网络情况提供给手机用户收听各种码率的MP3歌曲,在客户没购买歌曲的情况下提供一个三十秒内的试听版本.这样一个系统非常明确地一个需求就是会定期需要将一批从 ...

  5. 「Azure」数据分析师有理由爱Azure之一-Azure能带给我们什么?

    前面我们以相同的方式从数据分析师的视角介绍了Sqlserver,本系列亦同样地延续下去,同样是挖掘数据分析师值得使用的Azure云平台的功能.因云平台功能太多,笔者所接触的面也十分有限,有更专业的读者 ...

  6. 技术博客:Azure Functions + Azure Storage 开发

    Azure GitHub wiki 同步发布 传送门 Azure Functions 通过 Functions(一个事件驱动型无服务器计算平台,还可以解决复杂的业务流程问题)更加高效地进行开发.在本地 ...

  7. 云计算平台简介(App Engine)

    云计算平台简介(App Engine)     1   简介 App Engine: 应用程序引擎,是托管网络应用程序的云计算平台. 1.1  什么是云 云计算通常简称为“云”,是一种通过 Inter ...

  8. 目前国际上所用云计算平台IaaS、PaaS、SaaS简介

    随着云计算这个概念越来越为人所熟知,企业对云计算的重视程度也在日趋加深.这不仅是一种潮流,更体现了一种需求——数字化.现代化.科技化的整体需求.如今市场上云计算的运营商更是风起云涌,服务种类更是丰富繁 ...

  9. APT攻击将向云计算平台聚焦

    APT攻击作为一种高效.精确的网络攻击方式,在近几年被频繁用于各种网络攻击事件之中,并迅速成为企业信息安全最大的威胁之一. 近日,飞塔中国首席技术顾问X在谈及APT攻击时表示,随着云计算的不断发展普及 ...

随机推荐

  1. 关于sys.argv

    sys.argv[]用来获取命令行参数,sys.argv[0]表示代码本身的文件路径.比如在命令行输入‘python test.py -version',sys.argv[0]的值即为test.py, ...

  2. switch实现一个两数的运算

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. WebStorm ES6 语法支持设置&babel使用及自动编译

    一.语法支持设置 Preferences > Languages & Frameworks > JavaScript 二.Babel安装 1.全局安装 npm install -g ...

  4. 在Windows上使用Ubuntu共享的打印机

    Ubuntu下使用cups共享打印机, 是一种简单易用的方法.CUPS(Common UNIX Printing System,通用Unix打印系统)是Fedora Core3中支持的打印系统,它主要 ...

  5. 三分钟读懂TT猫分布式、微服务和集群之路

    针对入门新手的普及,有过大型网站技术架构牛人路过,别耽误浪费了时间,阅读之前,请确保有一定的网络基础,熟练使用Linux,浏览大概需要3-5分钟的时间,结尾有彩蛋. 目录 分布式 微服务 负载均衡集群 ...

  6. ios 初体验<UILabel控件>

    创建控件: UILabel *label = [[UILabel alloc]init]; //设置控件大小 label.frame = CGRectMake(50,100,300,40);//分别为 ...

  7. 8.中断按键驱动程序之poll机制

    本节继续在上一节中断按键程序里改进,添加poll机制. 那么我们为什么还需要poll机制呢.之前的测试程序是这样: ) { read(fd, &key_val, ); printf(" ...

  8. 201521123090《Java程序设计》第1周学习总结

    1.学习总结 初步了解面对对象编程思想 使用eclipse关联git管理代码 简单了解java 2.书面作业 Q:为什么java程序可以跨平台运行?执行java程序的步骤是什么?(请用自己的语言书写) ...

  9. 201521123081《Java程序设计》 第10周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 参考资料:XMind 2. 书面作业 本次PTA作业题集异常.多线程. Q1. finally 题目4-2 ...

  10. ul中li居中显示的table方法

    废话不多,贴代码 <ul> <li>1</li> <li>2</li> <li>3</li> <li>4 ...