pytorch:debug dataLoader for循环的时候,很卡顿,进不去transform里面断点

推荐解决方案:

  • 前一进程还未处理完,又进入下一个导致互锁,在一个Epoch完了后,或者每次获取一个batch数据后停顿一下: time.sleep(0.003)
  • 内存问题,使用开关:pin_memory=True/False
  • 多进程导致互锁问题,减少进程数,或直接使用一个:num_workers=0/1
  • 使用其他DataLoader的问题,改为: from torch.utils.data.dataloader import DataLoader
  • 内存大小不够的问题:writing 8192 to /proc/sys/kernel/shmmni
  • 如果脚本中同时使用了OpenCV,可能是OpenCV与Pytorch互锁的问题。
  • 关闭OpenCV的多线程:
  • cv2.setNumThreads(0)
  • cv2.ocl.setUseOpenCL(False)
  • 是否存在打开文件未关闭的问题:[openfile].close()

猜你喜欢

转载自blog.csdn.net/m0_72734364/article/details/133427829