熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AWS使用深度學(xué)習(xí)的10個Linux命令

基于AWS使用深度學(xué)習(xí)的10個Linux命令

作者: 時間:2017-09-18 來源:網(wǎng)絡(luò) 收藏

  在上執(zhí)行大規(guī)模的深度學(xué)習(xí)處理是一個廉價而且有效的學(xué)習(xí)和開發(fā)方式?;ㄉ倭康腻X就可以使用數(shù)十GB的內(nèi)存,數(shù)十個CPU,多個GPU,這是值得推薦的。

本文引用地址:http://www.bjwjmy.cn/article/201709/364415.htm

  如果你是使用EC2或者 命令的新人,在云端執(zhí)行深度學(xué)習(xí)腳本的時候, 這些命令是非常有效的。

  本文的主要內(nèi)容包括:

  1)在本機和EC2實例間復(fù)制數(shù)據(jù)

  2)使腳本按天,周,月安全地運行

  3)監(jiān)測進程,系統(tǒng)和GPU 的性能

  注意:所有命令在類linux環(huán)境中執(zhí)行(,OS x 或者 cygwin)

  0、環(huán)境約定

  假設(shè) EC2 已經(jīng)正常運行,方便起見,對環(huán)境做如下的設(shè)定:

  1)EC2 服務(wù)器的IP地址為 54.218.86.47

  2)用戶名為ec2-user

  3)SSH 密鑰位于 ~/.ssh/ 中,文件名為aws-keypair.pem;

  4)使用python 腳本工作

  關(guān)于如何搭建一個 基于GPU的EC2實例來 執(zhí)行深度學(xué)習(xí),可以參見:

  https://machinelearningmastery.com/develop-evaluate-large-deep-learning-...

  1、 登陸到服務(wù)器

  在做任何操作之前,首先要登陸到目標服務(wù)器。簡單地,使用SSH命令。將SSH 密鑰存儲在 ~/.ssh/ 中,使用有意義的文件名,例如aws-keypair.pem。使用如下命令登陸EC2主機,注意地址和用戶名:

  ssh -i ~/.ssh/aws-keypair.pem ec2-user@54.218.86.47

  2、 拷貝文件到服務(wù)器

  使用SCP命令拷貝本地文件到服務(wù)器,例如將script.py 文件拷貝到EC2 服務(wù)器的命令如下:

  scp -i ~/.ssh/aws-keypair.pem script.py ec2-user@54.218.86.47:~/

  3、使腳本在服務(wù)器的后臺運行

  在服務(wù)的后臺執(zhí)行腳本,可以忽略其他進行的信號量,忽略標準的輸入輸出,將所有的輸出和錯誤信息重定向到一個日志文件中。對于需要長時間運行的深度學(xué)習(xí)模型而言, 這是非常必要的。

  > nohup python /home/ec2-user/script.py >/home/ec2-user/script.py.log &1 &

  該命令中script.py 和 script.py.log 都位于 /home/ec2-user/ 目錄下。關(guān)于 nohup 和重定向 參考其他的詳細介紹(例如wikipedia中的介紹)。

  4、在服務(wù)器的指定 GPU 上執(zhí)行腳本

  如果EC2 支持的話,推薦在同時運行多個腳本。例如,EC2有4個GPU的話, 可以在每個GPU上單獨運行一個腳本,示例代碼如下:

  CUDA_VISIBLE_DEVICES=0 nohup python /home/ec2-user/script.py >/home/ec2-user/script.py.log &1 &

  如果有4個GPU的話,可以指定CUDA_VISIBLE_DEVICES從0到3。這在TF做后臺的Keras上是可行的,在Theano 沒有測試過。

  關(guān)于CUDA_VISIBLE_DEVICES 的更多信息可以參見 https://devblogs.nvidia.com/parallelforall/cuda-pro-tip-control-gpu-visi...

  5、監(jiān)測腳本的輸出

  如果輸出結(jié)果中有項目評分或者一個算法的運行結(jié)果,實時監(jiān)控腳本的輸出是很有意義的。示例如下:

  tail -f script.py.log

  遺憾的是,當屏幕上在一段時間沒有輸出的時候, 會關(guān)閉這個終端,所以最好使用:

  watch "tail script.py.log"

  有的時候看不到python的標準輸出,不知道是python的問題還是EC2的問題。

  6、監(jiān)測系統(tǒng)和進程的性能

  監(jiān)測EC2系統(tǒng)的性能是有意義的,尤其是已經(jīng)使用了或還剩下多少內(nèi)存。例如:

  top -M

  或者指定進程標識PID:

  top -p PID -M

  7、監(jiān)測GPU 性能

  如果在GPU上同時執(zhí)行多個腳本,并行執(zhí)行的話,查看每個GPU 的性能和使用率是不錯的主意。例如:

  watch "nvidia-smi"

  8、檢查腳本是否還在服務(wù)器上運行

  一般地,會保持終端一直是開著的。

  watch "ps -ef | grep python"

  9、在服務(wù)器上編輯文件

  一般不建議在服務(wù)器直接修改,當然你熟知vi除外:

  vi ~/script.py

  vi 的用法就不在這里贅述了。

  10、從服務(wù)器上下載文件

  與上傳文件相對,這是一個下個png文件的例子:

  scp -i ~/.ssh/aws-keypair.pem ec2-user@54.218.86.47:~/*.png .

  需要注意的幾點

  如果希望同時運行多個腳本,最好選用擁有多個GPU 的EC2

  最好在本地編寫腳本

  將執(zhí)行結(jié)果輸出到文件,下載到本地進行分析

  使用watch 命令保持終端處于運行中

  在本地執(zhí)行遠程命令



關(guān)鍵詞: AWS Linux

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉