深度學習模型函式執行完畢後視訊記憶體不釋放問題解決方案

2021-09-29 05:05:36 字數 663 閱讀 5236

如下定義model_predict()函式為呼叫深度學習模型**結果函式,返回介面列表,使用多執行緒的方法可以使得呼叫函式後釋放顯示卡,以便在同張顯示卡上呼叫第二個深度學習模型。

具體**如下

import multiprocessing

# return_dict用於函式返回值

defmodel_predict

(x_test, return_dict):.

....

. res = predict(x_test)

return_dict[

"res"

]= res

defmain()

:# 獲取多執行緒中函式的返回值

manager = multiprocessing.manager(

) return_dict = manager.

dict()

#x_test 為模型輸入

p = multiprocessing.process(target=model_predict, args=

(x_test, return_dict)

) p.start(

) p.join(

) res = return_dict[

"res"

]

重讀深度探索C 物件模型 函式

對靜態函式的呼叫實際上經歷了以下的過程 1.改寫函式原型,安插乙個this指標作為額外的引數 float point3d magnitude3d const float magituded3d const point3d this 2.將函式內對非靜態成員的訪問改為經由this指標來訪問 靜態成員不...

統計深度學習模型的引數和視訊記憶體占用(pytorch)

這裡介紹兩種方法 使用相關的庫torchsummary from torchsummary import summary net net.to torch.device cpu or cuda summary net,4,228,912 device cpu or cuda 統計結果比較詳細,參數量...

如何讓深度學習模型更高效地執行

1.bottleneck或者depthwise或者winograd bottleneck或者depthwise這兩種方法可以大大降低參數量和計算量,winograd是降低卷積的乘法量 沒有任何精度損失 詳見我的另外三篇部落格 需要注意的是winograd fft卷積不一定有利於模型加速 2.稀疏化 ...