首頁 >後端開發 >Python教學 >python怎麼利用gpu加速

python怎麼利用gpu加速

(*-*)浩
(*-*)浩原創
2019-05-29 15:33:2113205瀏覽

看了好多教學都提到了使用os.environ["CUDA_VISIBLE_DEVICES"] = "1" 或export CUDA_VISIBLE_DEVICES=1

但是我加進程式碼裡面速度並沒有提高,查了很久才找到問題所在,當你的電腦有兩塊以上GPU時,上面這兩句程式碼才會運作!

python怎麼利用gpu加速

因為我的電腦只有一塊GPU,所以需要將參數的「1」改成「0」才可以,否則找不到「1」號設備,它就會預設使用CPU,速度不會提高。

如果是在終端機中執行python程序,使用指令:CUDA_VISIBLE_DEVICES=0 python filename.py即可

如果有多塊卡,想要指定多個gpu訓練,可以這樣設置:

def set_gpus(gpu_index):
    if type(gpu_index) == list:
        gpu_index = ','.join(str(_) for _ in gpu_index)
    if type(gpu_index) ==int:
        gpu_index = str(gpu_index)
    os.environ["CUDA_VISIBLE_DEVICES"] = gpu_index

透過呼叫set_gpu函數即可實現。

一定要注意的是,CUDA_VISIBLE_DEVICES,每!一!個!字!母!必須完全寫對,如果不小心寫成了CUDA_VISIBLE_DIVICES或CUDA_VISIABLE_DEVICES ,程式碼是不會報錯的,但是GPU呼叫不會成功,

以上是python怎麼利用gpu加速的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn