lordofgod opened a new issue #10968: Discuss about NDArray::Save and NDArray::Load URL: https://github.com/apache/incubator-mxnet/issues/10968 There seems to be some mistakes in NDArray::Save(dmlc::Stream *strm) (File: ndarray.cc, Line: 1587~1651) and NDArray::Load(dmlc::Stream *strm) (File:ndarray.cc, Line: 1700~1781). This issue may cause a CUDA: invalid device ordinal with following two steps: 1. Save a ndarray on gpu(1) in a machine with two gpu card; 2. Load the ndarray in another machine with only one gpu card the program. I find the problem is that in function NDArray::Save the context of ndarray will be saved into stream and in function NDArray::Load the data loaded into memory will be converted to the context saved by NDArray::Save. Why the context is saved in NDArray::Save? To improve portability of saved params, I think it's better to remove these operations to avoid load ndarray in specific device while initializing.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services