關於使用實驗室服務器的GPU以及跑上TensorFlow代碼

鏈接服務器

Windows - XShell XFtp SSH

  1. 經過SSH來鏈接實驗室的服務器
  • 使用SSH鏈接已經不陌生了 github和OS課設都常常使用
  • 目前使用 192.168.7.169
  1. 使用工具 XShell 和 XFtp
  • 使用XShell鏈接服務器以及操做,服務器每一個節點上都安裝了Ubuntu 16.04 LTS操做系統
  • 使用XFtp管理文件
  1. 參考資料:
    Xshell+Xftp SSH隧道代理
    Xshell經過SSH密鑰、SSH代理鏈接Linux服務器詳解

Mac OS - Terminal Cyberduck

由於實驗室工位上的電腦是Mac 只能從新熟悉一波了html

  1. 使用Terminal來創建SSH遠程鏈接
  2. 使用Cyberduck來創建SFtp鏈接管理文件(考慮filezilla中)
  3. 參考資料:
    Mac下如何用SSH鏈接遠程Linux服務器(包括Cyberduck下載)
    Mac下使用自帶終端SSH功能

創建環境 - virtualenv

  1. 創建虛擬環境並安裝包(也能夠考慮anaconda)
    創建環境:virtualenv xxx_py virtualenv -p python3 xxx_py
    進入環境:source xxx_py/bin/activate
    退出:deactivate
  2. 使用清華鏡像
  • 臨時使用
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
  • 設爲默認
    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
  1. 參考資料:
    清華pypi 鏡像使用幫助
    virtualenv介紹及基本使用
    Python開發必備神器之一:virtualenv
    virtualenv-廖雪峯的官方網站

讓TensorFlow代碼跑在GPU上

  1. GPU佔用問題
    TensorFlow可能會佔用視線可見的全部GPU資源
  • 查看gpu佔用狀況:gpustat
  • 在python代碼中加入:
    os.environ['CUDA_VISIBLE_DEVICES'] = '0' os.environ['CUDA_VISIBLE_DEVICES'] = '0,1'
  • 設置使用固定的gpu:
    CUDA_VISIBLE_DEVICES=1 Only device 1 will be seen  CUDA_VISIBLE_DEVICES=0,1 Devices 0 and 1 will be visible  CUDA_VISIBLE_DEVICES=」0,1」 Same as above, quotation marks are optional  CUDA_VISIBLE_DEVICES=0,2,3 Devices 0, 2, 3 will be visible; device 1 is masked
    運行代碼時
    CUDA_VISIBLE_DEVICES=0 python3 main.py
  • TensorFlow本身提供的兩種控制GPU資源的方法:
    • 在運行過程當中動態申請顯存,須要多少就申請多少
    config = tf.ConfigProto()  
    config.gpu_options.allow_growth = True  
    session = tf.Session(config=config)
    • 限制GPU的使用率
    gpu_options=tf.GPUOptions(per_process_gpu_memory_fraction=0.4)  
    config=tf.ConfigProto(gpu_options=gpu_options)  
    session = tf.Session(config=config)  
  1. TensorFlow代碼
    目前沒有考慮在代碼各個部分手動分配時GPU仍是CPU
    因此用 with tf.device(self.device): 把全部網絡結構包了起來
    而後用 config = tf.ConfigProto(gpu_options=gpu_options,allow_soft_placement=True) 讓TensorFlow本身去分配了python

  2. 參考資料:
    tensorflow設置gpu及gpu顯存使用
    TensorFlow 使用 GPU
    tensorflow GPU小測試linux

相關文章
相關標籤/搜索