Keras使用多個GPU並行

2022-08-21 18:18:19 字數 499 閱讀 4831

model = model(inputs=[v_i, v_j], outputs=output_list)

model = multi_gpu_model(model,4)

model.compile(....)

主要就是第二句話中的

multi_gpu_model函式,會把資料和模型分到多個gpu上執行

有個坑,就是整個程式匯入keras時要麼全部from keras import ...,要麼全部 from tensorflow.python.keras import ...,不能tensorflow裡的keras不能和原生keras混用,

要不就會報node' object has no attribute 'output_masks的錯誤

上邊部落格裡邊動態分配記憶體時,如果使用的是tensorflow裡的keras那麼不用set_session,如果遠端keras那麼需要k.set_session(sess)

實驗 Keras多GPU訓練

鏈結1 鏈結2 鏈結3 鏈結4 如圖是我的python和keras的版本,碰到了乙個問題是無法從keras.utils匯入multi gpu model。鏈結2給出了一些解決辦法,但我通過pip install upgrade keras 2.2.5,更新了一下版本後,keras.utils中就出現...

GPU 並行結構層次

從程式上,gpu的並行層次依次為 grid block wrap 每個kernel對應乙個grid。wrap內的執行緒可以通過排程器來控制執行,乙個wrap內的執行緒同時執行。wrap 的大小為32,所有指定block 的大小時,最好是32的大小,以免造成資源的浪費。每個執行緒有自己的local m...

caffe中使用多個GPU的方法

由於在ubuntu中使用caffe的程式時,都使用.sh檔案,該檔案中常見的命令為 build tools caffe train solver examples test solver.prototxt當電腦中有多個gpu時,預設使用gpu0。如果想使用其他的gpu,可以將該檔案內容修改如下 bu...