最近数初,團(tuán)隊(duì)里希望能夠在神經(jīng)網(wǎng)絡(luò)上和深度學(xué)習(xí)上做些實(shí)驗(yàn)鹤啡,想做些概念證明工作。
因此清蚀,我需要搭建一臺能給我 GPU 計(jì)算能力的計(jì)算機(jī)匕荸。我決定了在谷歌的云平臺上搭建一臺。以下是考慮的因數(shù)枷邪,
在谷歌上注冊新用戶都能夠獲取到300美金的代金券
現(xiàn)在谷歌上有的 GPUs 類型有兩款 (Nvidia K80/P100)
我可以在服務(wù)器上安裝 CUDA 和 cnDNN
注冊新用戶
首先每聪,注冊新的谷歌帳號。
接著齿风,注冊谷歌云平臺帳號。
備注
- 谷歌云平臺免費(fèi)實(shí)用期為12月绑洛,價(jià)值300美金代金券
- 在注冊谷歌云品臺時(shí)會用到信用卡救斑。即使是免費(fèi)注冊也需要有效的信用卡號
設(shè)置預(yù)算預(yù)警
我建議在添加任何新的功能前,先吧預(yù)算預(yù)警設(shè)好真屯,應(yīng)為畢竟我們只有300美金的余額脸候。可以跟著以下步驟绑蔫,進(jìn)行設(shè)置运沦。
登入到 “結(jié)算 > 預(yù)算和提醒” 點(diǎn)擊 “創(chuàng)建新預(yù)算”。
創(chuàng)建新預(yù)算時(shí)配深,切記把預(yù)算金額設(shè)置為 $300携添。
設(shè)置 GPU 硬件
谷歌上的免費(fèi)帳號權(quán)限只有最基本的配額。GPU 其實(shí)不在這基本的配額上篓叶。我們需要向平臺申請修改配額烈掠。
不過免費(fèi)帳號是不能申請 GPU 的。我們首先必須做的是從免費(fèi)版升級到付費(fèi)版缸托。
升級的步驟如以下左敌,
登入到 “IAM 和管理 > 配額”。右上角附近點(diǎn)擊 “升級帳號”俐镐。升級后才能申請?zhí)砑?GPU 的配額矫限。
成功升級后,在列表里的下啦框里,選擇適當(dāng)?shù)闹笜?biāo)后應(yīng)該可在亞洲服務(wù)器上找到有關(guān)的 GPU叼风。
在寫這篇文章時(shí)的取董,只有東亞1 (Asia-East1) 有所需要的 GPU。
唯一美中不足的一點(diǎn)是咬扇,在提交配額升級的過程時(shí)我們需要付一批35美金的激活費(fèi)甲葬。考慮到價(jià)格懈贺,我的 GPU 選了一架 Nvidia 的 K80 GPU.
備注
- 一般申請流程需要 2–3 工作日
- 還有在寫文章的時(shí)間時(shí)经窖,K80 比 P100 的計(jì)算費(fèi)用按月來算差別為 500美金,因?yàn)?P100 已經(jīng)超出我的預(yù)算梭灿,所以選擇了 K80
以上的流程一旦通過画侣,我們可以開始搭建新的實(shí)例。因項(xiàng)目的需求堡妒,我選擇了以下的配置配乱,
實(shí)例配置
- 地區(qū):asia-east1-a
- 機(jī)器類型:1 x vCPU
- 內(nèi)存:3.75GB
- GPU:1 x K80
- OS: Ubuntu 16.04
- Cloud API 訪問權(quán)限范圍:允許所有 Cloud API 的全面訪問權(quán)限
實(shí)例搭建好之后,你可以通過幾種方式登入到實(shí)例上做一系列的操作皮迟。最普遍的方式應(yīng)該有搬泥,
- 直接從游覽器上打開
- 用 ssh 客戶段
- 用谷歌的
gcloud
命令
我選這了用第三種方式。gcloud
命令伏尼。
本地機(jī)上安裝 gcloud 程序
因?yàn)槲业谋镜貦C(jī)上的系統(tǒng)是 macOS忿檩,以下的內(nèi)容將針對我所經(jīng)驗(yàn)過的步驟。如果需要用其他的系統(tǒng)可以參考以下鏈接爆阶,
- Creating Instance with Custom Machine
- Redhat CentOS Quickstart
- Debian Ubuntu Quickstart
- Windows Quickstart
在你的本地 macOS 上燥透,確保你已經(jīng)有 python 2.7,如果需要的辨图,可以用 vitualenv 或 conda 安裝 python班套。
登入到 macOS Quickstart 下載針對您的 macOS 系統(tǒng)的 gcloud
安裝包。然后運(yùn)行安裝腳本 ./google-cloud-sdk/install.sh
故河。
如果您遇到如以下的問題/報(bào)錯(cuò)吱韭,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 262: ordinal not in range(128)
您可以直接把程序的命令腳本文件連接到您的 rc 文件里,例如 ~/.bashrc
, 記得保存后運(yùn)行 source ~/.bashrc/
鱼的。以下的命令杉女,可以把自己的參數(shù)替換掉。
$ echo 'export PATH=/where-you-unzipped/google-cloud-sdk/bin:$PATH' >> ~/.bashrc
$ source ~/.bashrc
運(yùn)行 gcloud init
把初始化的流程走完鸳吸,問題回答完熏挎。
流程走完后,登入到實(shí)例的命令如以下晌砾,記得把需要的參數(shù)改為自己的參數(shù)坎拐。
$ gcloud compute --project 'your-project' ssh --zone 'your-zone' 'your-instance-name'
Done! You should now have access to GCP instance.
If you want to start using your GPUs, look at the steps I took to install CUDA and cuDNN.