Serialization error when loading pretrained network, "tarfile.ReadError: invalid header"

I have got a question. I have trained a deep neural network on GPU, and then finally moved my GPU mode deep network to the CPU mode. Further more, after saving CPU mode network with, 'final.pth') and moving to another system and loading with net.load_state_dict(torch.load('./final.pth')) and running it, I have encountered with below error. Could you please help me what is the problem of my code?

Traceback (most recent call last):
File “/home/mohammad/anaconda3/lib/python3.6/”, line 185, in nti
n = int(s.strip() or “0”, 8)
ValueError: invalid literal for int() with base 8: ‘ons\nOrde’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/home/mohammad/anaconda3/lib/python3.6/”, line 2287, in next
tarinfo = self.tarinfo.fromtarfile(self)
File “/home/mohammad/anaconda3/lib/python3.6/”, line 1086, in fromtarfile
obj = cls.frombuf(buf, tarfile.encoding, tarfile.errors)
File “/home/mohammad/anaconda3/lib/python3.6/”, line 1028, in frombuf
chksum = nti(buf[148:156])
File “/home/mohammad/anaconda3/lib/python3.6/”, line 187, in nti
raise InvalidHeaderError(“invalid header”)
tarfile.InvalidHeaderError: invalid header

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “”, line 357, in
File “/home/mohammad/anaconda3/lib/python3.6/site-packages/torch/”, line 248, in load
return _load(f, map_location, pickle_module)
File “/home/mohammad/anaconda3/lib/python3.6/site-packages/torch/”, line 314, in _load
with closing(, mode=‘r:’, format=tarfile.PAX_FORMAT)) as tar,
File “/home/mohammad/anaconda3/lib/python3.6/”, line 1582, in open
return func(name, filemode, fileobj, **kwargs)
File “/home/mohammad/anaconda3/lib/python3.6/”, line 1612, in taropen
return cls(name, mode, fileobj, **kwargs)
File “/home/mohammad/anaconda3/lib/python3.6/”, line 1475, in init
self.firstmember =
File “/home/mohammad/anaconda3/lib/python3.6/”, line 2299, in next
raise ReadError(str(e))
tarfile.ReadError: invalid header

I have to say that my server’s pytorch version is 0.1.11 and my own system is 0.1.8. Is this the source of error?


Edit 1:
I have tried above code on our server. It is actually fine and without error. These errors were started to generate when I reinstalled pytorch.

Edit 2:
The saved format before reinstallation of pytorch on our server was .tar but after reinstallation it has changed to Binary. Moreover, I should say that all of the conversion are done on server!

@apaszke, @fmassa, @albanD, @smth Could you please help me to settle this issue ?

upgrading your pytorch on desktop will solve issue.

Okay thanks I solved the issue!

@mderakhshani did you figure out why it said “cannot read file data” when upgrading pytorch ?

@smth, Actually upgrading was not applicable for me! I uninstalled anaconda first and then reinstall it again.