Using PyTorch, what is the difference between the following two methods in sending a tensor to GPU:
Method 1:
X = np.array([[1, 3, 2, 3], [2, 3, 5, 6], [1, 2, 3, 4]])
X = torch.DoubleTensor(X).cuda()

Method 2:
X = np.array([[1, 3, 2, 3], [2, 3, 5, 6], [1, 2, 3, 4]])
X = torch.DoubleTensor(X)

device = torch.device("cuda:0")
X = X.to(device)

Similarly, is there any difference in the same two methods above when applied to sending a model to GPU:
Method A:
gpumodel = model.cuda()

Method B:
device = torch.device("cuda:0")
gpumodel = model.to(device)

Many thanks in advance!