pytorch dataloader num_workers引數設定導致訓練阻塞
參考:https://blog.csdn.net/qian1122221/article/details/88579684
問題描述:
最近在用RFBnet (原始碼是pytorch的)訓練RSNA的比賽資料,除了要修改一點程式碼支援RSNA的資料集外(打算後續再寫個部落格),發現在使用dataloader讀取資料時,如果設定num_workers為0,也就是用主程式讀取資料,模型訓練程式執行正常。如果設定num_workers為其他任何一個大於0的整數,也就是使用子程式讀取資料時,訓練程式會卡住,卡在訓練之前,GPU使用率和視訊記憶體佔用率都為0。
解決過程:
由於是多程式就,用print除錯大法,定位到是一行opencv程式碼的問題,在dataloader子類的__getitem__方法裡面呼叫了
image_array = cv2.cvtColor(image_array, cv2.COLOR_GRAY2BGR)
所有子程式的程式碼都卡在這裡了。之前也有遇到過類似的問題,python多程式呼叫opencv的程式碼會出現問題。於是就用numpy的concate替代了這個方法
image_array = np.concatenate([image_array,image_array,image_array],axis=2)
繞過這個問題就可以正常訓練了。
問題探索:
其實這個問題,我在另外一臺機器上是沒有遇到了,該機器是python3.6+opencv3.4.2
遇到問題的環境是docker環境,python3.5+opencv3.2
我感覺跟opencv的版本可能有關係,等後續訓練完成之後把docker裡面opencv的版本升級到3.4.2再試一下
相關文章
- 深度學習煉丹-超引數設定和網路訓練深度學習
- Pytorch - DataloaderPyTorch
- jdbc autoReconnect=true 引數設定導致 slow log 爆表。JDBC
- Pytorch分散式訓練PyTorch分散式
- Pytorch入門-dataloaderPyTorch
- 模擬RI鎖定導致阻塞的場景
- PyTorch預訓練Bert模型PyTorch模型
- JDBC的連線引數的設定導致rowid自動新增到sqlJDBCSQL
- 【AI】Pytorch_預訓練模型AIPyTorch模型
- PyTorch 模型訓練實⽤教程(程式碼訓練步驟講解)PyTorch模型
- STANDBY_FILE_MANAGEMENT引數未設定auto導致的ADG備庫異常
- Pytorch:單卡多程式並行訓練PyTorch並行
- ANALYZE導致的阻塞問題分析
- Apache HttpClient 沒有設定time out導致應用長時間阻塞的問題ApacheHTTPclient
- AIX maxperm引數導致監聽問題AI
- 利用PyTorch訓練模型識別數字+英文圖片驗證碼PyTorch模型
- 核心引數導致的備庫當機分析
- Pytorch:使用Tensorboard記錄訓練狀態PyTorchORB
- redis AOF落地策略rewrite導致阻塞問題Redis
- 使用Pytorch訓練分類器詳解(附python演練)PyTorchPython
- 【DataGuard】由於備庫引數設定不當導致資料檔案無法新增的故障分析
- vsftpd設定引數FTP
- RAC 特定引數設定
- 兩個引數設定
- pytorch dataloader和batch_size大小的理解PyTorchBAT
- 【小白學PyTorch】3 淺談Dataset和DataloaderPyTorch
- Pytorch入門上 —— Dataset、Tensorboard、Transforms、DataloaderPyTorchORBORM
- 雲原生的彈性 AI 訓練系列之二:PyTorch 1.9.0 彈性分散式訓練的設計與實現AIPyTorch分散式
- mysqldump缺失-q引數導致mysql被oom幹掉MySqlOOM
- 用SSD-Pytorch訓練自己的資料集PyTorch
- [專案實戰]訓練retinanet(pytorch版)NaNPyTorch
- 輕量化模型訓練加速的思考(Pytorch實現)模型PyTorch
- 【DataGuard】由於備庫引數設定不當導致資料檔案無法新增的故障分析(轉)
- win10系統引導怎麼設定_win10設定系統引導的方法Win10
- 如何訓練2457億引數量的中文巨量模型“源1.0”模型
- 連結伺服器查詢導致的阻塞伺服器
- Metasploit設定LHOST引數技巧
- Metasploit設定VERBOSE引數技巧