How to properly run my project using GPU?
I am really new to torch and machine learning. I am trying to run my project using GPU. I tried to have such modification to my code:

model = Challenge()
    model = model.to(torch.device('cuda'))


However, I am still having following error:

Traceback (most recent call last):
  File "C:/Users/ruidong/Desktop/YZR temp/Project2/train_challenge.py", line 112, in &lt;module&gt;
    main()
  File "C:/Users/ruidong/Desktop/YZR temp/Project2/train_challenge.py", line 91, in main
    stats)
  File "C:/Users/ruidong/Desktop/YZR temp/Project2/train_challenge.py", line 40, in _evaluate_epoch
    output = model(X)
  File "C:\Users\ruidong\Anaconda3\envs\EECS445\lib\site-packages\torch\nn\modules\module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "C:\Users\ruidong\Desktop\YZR temp\Project2\model\challenge.py", line 48, in forward
    z = F.relu(self.conv1(x))
  File "C:\Users\ruidong\Anaconda3\envs\EECS445\lib\site-packages\torch\nn\modules\module.py", line 532, in __call__
    result = self.forward(*input, **kwargs)
  File "C:\Users\ruidong\Anaconda3\envs\EECS445\lib\site-packages\torch\nn\modules\conv.py", line 345, in forward
    return self.conv2d_forward(input, self.weight)
  File "C:\Users\ruidong\Anaconda3\envs\EECS445\lib\site-packages\torch\nn\modules\conv.py", line 342, in conv2d_forward
    self.padding, self.dilation, self.groups)
RuntimeError: Expected object of device type cuda but got device type cpu for argument #1 'self' in call to _thnn_conv2d_forward


Any suggestions? really appreciate.

The model is correctly moved to GPU. However, for a model that is placed in GPU, you need to pass the tensors that are in GPU too. The error is because you are passing tensor that is placed in CPU in a model that is in GPU. Just do the same for inputs before passing them to model
