在PyCharm中运行模型遇到此个问题:RuntimeError: module must have its parameters and buffers on device cuda:0 (device_ids[0]) but found one of them on device: cpu。翻译过来的意思是:模型的参数和buffer(缓存?)需要在cuda:0上运行,但是只找到设备:CPU。
这类问题主要涉及到的是模型运行设备的设置,在多GPU上训练模型时,可能后面报错的错误会是but found one of them on device: 1等等。解决此类问题的关键是加载模型的时候,让当前模型运行所在设备在和先前的保持一致。
因此,,对于本文描述的问题( but found one of them on device: cpu),只找到CPU设备,只需在加载模型的前面指定模型在cuda:0上运行即可。如下图所示: