@MoriartyShan you are correc. This is weird behavior. For the time being, following is the workaround, but i will try to get to the bottom of this. It will be a good exercise
import torch
import torch.multiprocessing as multiprocessing
import copy 

def run():
    print("run")
    device=torch.device("cpu")
    print(torch.__version__)
    x1 = torch.rand(720, 1280, dtype=torch.float32, device=device)
    x2 = torch.from_numpy(x1.detach().numpy().astype(np.float64))
    print('b', x2.dtype)

x = torch.rand(1080, 1920,device=torch.device("cpu"))
print("finish create\n", x)

thread = multiprocessing.Process(target=run)
thread.start()
print("wait")
thread.join()
print("finish")