亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > pytorch鎖死在dataloader(訓練時卡死)

pytorch鎖死在dataloader(訓練時卡死)

熱門標簽:開封自動外呼系統怎么收費 天津電話機器人公司 400電話辦理哪種 電銷機器人的風險 應電話機器人打電話違法嗎 地圖標注線上如何操作 手機網頁嵌入地圖標注位置 開封語音外呼系統代理商 河北防封卡電銷卡

1.問題描述

2.解決方案

(1)Dataloader里面不用cv2.imread進行讀取圖片,用cv2.imread還會帶來一系列的不方便,比如不能結合torchvision進行數據增強,所以最好用PIL 里面的Image.open來讀圖片。(并不適用本例)

(2)將DataLoader 里面的參變量num_workers設置為0,但會導致數據的讀取很慢,拖慢整個模型的訓練。(并不適用本例)

(3)如果用了cv2.imread,不想改代碼的,那就加兩條語句,來關閉Opencv的多線程:cv2.setNumThreads(0)和cv2.ocl.setUseOpenCL(False)。加了這兩條語句之后,并不影響模型的訓練。(并不適用本例)

(4)這種情況應該是屬于pytorch多線程鎖死,在github上看到有該問題,但是沒有解決的。

參考建議

首先確保num_works數量低于CPU數量(如果使用Kubernetes,則設置為pod),但是設置得足夠高,使數據隨時可以用于下一次迭代。

如果GPU在t秒內運行每個迭代,而每個dataloader worker加載/處理單個批處理需要N*t秒,那么您應該將num_workers設置為至少N,以避免GPU停滯。當然,系統中至少要有N個cpu。

不幸的是,如果Dataloader使用任何使用K個線程的庫,那么生成的進程數量就會變成num_workersK = NK。這可能比計算機中的cpu數量大得多。這會使pod節流,而Dataloader會變得非常慢。這可能導致Dataloader不返回批處理每t秒,導致GPU暫停。

避免K個線程的一種方法是通過OMP_NUM_THREADS=1 MKL_NUM_THREADS=1 python train.py調用主腳本。這就限制了每個Dataloader工作程序只能使用一個線程,從而避免了使機器不堪重負。你仍然需要有足夠的num_workers來滿足GPU的需要。

您還應該在_get_item__中優化您的代碼,以便每個worker在較短的時間內完成其批處理。請確保worker完成批處理的時間不受從磁盤讀取訓練數據的時間(特別是當您從網絡存儲中讀取數據時)或網絡帶寬(當您從網絡磁盤讀取數據時)的影響。如果您的數據集很小,并且您有足夠的RAM,那么可以考慮將數據集移動到RAM(或/tmpfs)中,并從那里讀取數據以進行快速訪問。對于Kubernetes,您可以創建一個RAM磁盤(在Kubernetes中搜索emptyDir)。

如果你已經優化了你的_get_item__代碼,并確保磁盤訪問/網絡訪問不是罪魁禍首,但仍然會出現問題,你將需要請求更多的cpu(為了一個Kubernetes pod),或者將你的GPU移動到擁有更多cpu的機器上。

另一個選項是減少batch_size,這樣每個worker要做的工作就會減少,并且可以更快地完成預處理。后一種選擇在某些情況下是不可取的,因為會有空閑的GPU內存不被利用。

你也可以考慮離線做一些預處理,減輕每個worker的負擔。例如,如果每個worker正在讀取一個wav文件并計算音頻文件的譜圖,那么可以考慮離線預先計算譜圖,只從工作者的磁盤中讀取計算的譜圖。這將減少每個worker的工作量。

你也可以考慮將dataloader里的設置pin_memory=False。

補充:pytorch加載訓練數據集dataloader操作耗費時間太久,該如何解決?

筆者在使用pytorch加載訓練數據進行模型訓練的時候,發現數據加載需要耗費太多時間,該如何縮短數據加載的時間消耗呢?經過查詢相關文檔,

總結實際操作過程如下:

1、盡量將jpg等格式的文件保存為bmp文件,可以降低解碼時間;

2、dataloader函數中增加num_workers參數,該參數表示加載數據的線程數,建議設置為該系統中的CPU核心數,若CPU很強勁,而且內存很大,也可以考慮將該數值設置的更大一些。

train_loader=torch.utils.data.DataLoader(dataset=train_dataset,batch_size=batch_size,shuffle=True)

修改為:

train_loader=torch.utils.data.DataLoader(dataset=train_dataset,batch_size=batch_size,shuffle=True,num_workers=multiprocessing.cpu_count())

雖然使用dataloader達到了iter(Dataset)的讀取并行,但是沒有實現在GPU運算時異步讀取數據,可以考慮使用non_blocking實現。

dataloader = data.Dataloader(dataset, batch_size = batch_size, num_workers = workers)
for epoch in range(epochs):
    for batch_idx, (images, labels) in enumerate(dataloader):
        images = images.to(device)
        labels = labels.to(device)

改為:

dataloader = data.Dataloader(dataset, batch_size = batch_size, num_workers = workers, pin_memory = True)
for epoch in range(epochs):
    for batch_idx, (images, labels) in enumerate(dataloader):
        images = images.to(device, non_blocking=True)
        labels = labels.to(device, non_blocking=True)

需要注意的是:只有pin_memory=True并且num_workers>0時non_blocking才會有效。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • pytorch Dataset,DataLoader產生自定義的訓練數據案例
  • 解決Pytorch dataloader時報錯每個tensor維度不一樣的問題
  • pytorch中DataLoader()過程中遇到的一些問題
  • Pytorch dataloader在加載最后一個batch時卡死的解決
  • Pytorch 如何加速Dataloader提升數據讀取速度
  • pytorch DataLoader的num_workers參數與設置大小詳解
  • pytorch 實現多個Dataloader同時訓練

標簽:山東 駐馬店 成都 六盤水 江蘇 常州 宿遷 蘭州

巨人網絡通訊聲明:本文標題《pytorch鎖死在dataloader(訓練時卡死)》,本文關鍵詞  pytorch,鎖死,在,dataloader,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《pytorch鎖死在dataloader(訓練時卡死)》相關的同類信息!
  • 本頁收集關于pytorch鎖死在dataloader(訓練時卡死)的相關信息資訊供網民參考!
  • 推薦文章
    夜夜操网| 午夜久久网| 久久精品大片| 毛片的网站| 国产91丝袜在线播放0| 色综合久久天天综合| 在线观看导航| 成人在免费观看视频国产| 韩国三级香港三级日本三级| 韩国三级视频网站| 免费国产在线观看| 欧美激情一区二区三区视频 | 日韩avdvd| 国产视频一区在线| 亚飞与亚基在线观看| 可以在线看黄的网站| 日韩综合| 国产网站麻豆精品视频| 精品久久久久久综合网| 99久久精品国产高清一区二区| 日日夜夜婷婷| 欧美日本免费| 国产不卡在线观看视频| 国产高清在线精品一区a| 国产伦理精品| 欧美日本国产| 免费国产在线观看| 999久久久免费精品国产牛牛| 国产国产人免费视频成69堂| 亚洲女初尝黑人巨高清在线观看| 国产91精品一区| 精品视频在线看| 成人免费观看视频| 黄视频网站免费看| 999精品在线| 亚久久伊人精品青青草原2020| 精品在线观看一区| 免费的黄色小视频| 欧美α片无限看在线观看免费| 日韩在线观看免费| 久久成人综合网| 午夜家庭影院| 久草免费在线观看| 精品久久久久久影院免费| 欧美另类videosbestsex久久| 久久成人综合网| 日本免费看视频| 九九久久国产精品| 久久精品店| 日日夜夜婷婷| 中文字幕一区二区三区 精品| 日本伦理黄色大片在线观看网站| 日本在线www| 欧美一区二区三区性| 一级毛片视频免费| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产一区二区精品| 99色吧| 精品久久久久久免费影院| 亚洲精品影院| 黄色短视屏| 尤物视频网站在线观看| 欧美a级片视频| 免费国产在线视频| 国产高清在线精品一区二区| 亚洲不卡一区二区三区在线| 天天做人人爱夜夜爽2020| 99久久精品国产国产毛片| 精品国产香蕉在线播出| 国产成人精品综合在线| 欧美电影免费看大全| 黄色免费三级| 亚洲 激情| 免费一级片网站| 久久精品成人一区二区三区| 国产网站免费观看| 久久精品免视看国产明星| 午夜在线影院| 国产精品12| 欧美国产日韩久久久| 九九干| 青青久久国产成人免费网站| 日韩在线观看免费| 九九国产| 欧美另类videosbestsex视频| 久久国产一久久高清| 午夜欧美成人久久久久久| 欧美激情一区二区三区中文字幕| 精品国产一级毛片| 麻豆污视频| 九九热精品免费观看| 台湾美女古装一级毛片| 免费国产在线观看不卡| 四虎影视精品永久免费网站| a级精品九九九大片免费看| 亚洲wwwwww| 亚欧视频在线| 久草免费在线视频| 九九干| 国产伦精品一区三区视频| 久久99中文字幕| 91麻豆国产福利精品| 日韩一级精品视频在线观看| 日日夜夜婷婷| 国产一区二区精品在线观看| 欧美α片无限看在线观看免费| 亚洲第一页乱| 国产不卡精品一区二区三区| 尤物视频网站在线| 国产a视频| 国产一区二区精品| a级毛片免费观看网站| 精品在线免费播放| 日韩专区一区| 97视频免费在线观看| 九九精品在线播放| 日日夜夜婷婷| 一级女性全黄生活片免费| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 天天做人人爱夜夜爽2020| 精品国产亚洲人成在线| 午夜欧美福利| 日日日夜夜操| 韩国毛片| 黄视频网站免费| 黄色免费三级| 欧美激情一区二区三区在线| 国产极品精频在线观看| 九九免费高清在线观看视频| 美女免费精品视频在线观看| 亚洲第一页乱| 黄视频网站在线观看| 国产不卡在线观看视频| 精品在线视频播放| 香蕉视频久久| 国产视频网站在线观看| 国产原创视频在线| 久久国产影院| 香蕉视频久久| 国产麻豆精品免费密入口| 香蕉视频一级| 日本乱中文字幕系列| 99色视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产a免费观看| 日韩综合| 国产91精品露脸国语对白| 欧美另类videosbestsex高清| 夜夜操网| 欧美大片aaaa一级毛片| 国产综合91天堂亚洲国产| 国产一区免费在线观看| 国产亚洲免费观看| 国产视频一区二区在线观看| 国产伦精品一区二区三区无广告 | 国产伦久视频免费观看视频| 精品在线免费播放| 日韩免费在线视频| 国产一区免费观看| 超级乱淫伦动漫| 日韩avdvd| 日本特黄一级| 亚洲女人国产香蕉久久精品| 日本伦理片网站| 黄视频网站免费看| 欧美激情在线精品video| 青草国产在线观看| 国产欧美精品| 午夜久久网| 国产成人精品综合久久久| 亚洲精品影院| 国产成人精品一区二区视频| 国产激情视频在线观看| 日韩av成人| 欧美a级成人淫片免费看| 一级片免费在线观看视频| 高清一级淫片a级中文字幕 | 成人免费观看网欧美片| 久草免费在线视频| 国产视频一区在线| 成人影视在线播放| 精品视频免费观看| 九九热精品免费观看| 深夜做爰性大片中文| 国产一区精品| 国产原创中文字幕| 日日夜夜婷婷| 欧美一级视频免费| 国产不卡在线播放| 91麻豆精品国产综合久久久| 亚洲 国产精品 日韩| 午夜在线亚洲| 亚洲 激情| 国产一级生活片| 国产极品白嫩美女在线观看看| 国产国语对白一级毛片| 韩国三级视频网站| 国产韩国精品一区二区三区| 四虎久久精品国产| 欧美1区|