【发布时间】:2022-03-10 02:27:24
【问题描述】:
我是训练 pytorch 模型的新手 在 GPU 上 我曾尝试在 Windows 上对其进行训练,但始终使用专用内存(10GB)并且不使用共享内存 我尝试使用多处理来提高其性能,但我一直收到错误消息: TypeError: cannot pickle 'module' object
解决方案通常是在加载数据时使用 num_wrokers =0 加载数据后我实际上使用了多处理 并且只需要使用共享内存
我正在重新训练 meta-sr 说话人验证码,特别是训练文件: https://github.com/seongmin-kye/meta-SR/blob/b4c1ea1728e33f7bbf7015c38f508f24594f3f88/train.py
我已将第 92 行编辑为使用共享 GPU 内存,如下所示
代替:
train(train_generator, model, objective, optimizer, n_episode, log_dir, scheduler)
致:
model.share_memory()
p = mp.Process(target=train, args=(train_generator,model,objective, optimizer, n_episode, log_dir, scheduler))
p.num_workers=0
p.start()
p.join()
如果需要添加更多信息,请告诉我 提前致谢
【问题讨论】:
-
请分享您的代码和设置。
-
已根据您的推荐编辑,谢谢,
标签: python pytorch gpu-shared-memory