Mahsa
Mahsa

Reputation: 591

How to return back to cpu from gpu in pytorch?

I have a text classifier in pytorch and I want to use GPUs to increase running speed. I have used this part of code to check CUDA and use it:

if torch.cuda.device_count() > 1:
    print("Let's use", torch.cuda.device_count(), "GPUs!")
    my_rnn_model = nn.DataParallel(my_rnn_model)
if torch.cuda.is_available():
    my_rnn_model.cuda()

Now I want to return back to use cpu (instead of gpu). So I cleared this part of code. But it does’nt work and I receive this error:

RuntimeError: cuda runtime error (8) : invalid device function at /opt/conda/conda-bld/pytorch_1503963423183/work/torch/lib/THC/THCTensorCopy.cu:204

Would you please guide me how can I return back to cpu running?

Upvotes: 4

Views: 4200

Answers (3)

Rex Low
Rex Low

Reputation: 2167

It would seem like your GT 425M has the compute capability of 2.1 which does not met the PyTorch required version (at least 3.0) according to @soumith in this thread.

Ergo, it is not possible for you to access some of the GPU-related functions.

You can check the compute capability here

More info here

Upvotes: 1

Jatentaki
Jatentaki

Reputation: 13103

There is a .cpu() method, equivalent to .cuda(), which is available in earlier versions too.

Upvotes: 2

Daniel Sobrado
Daniel Sobrado

Reputation: 747

You can set the GPU device that you want to use using:

device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')

And in your case just you can return to CPU using:

torch.device('cpu')

Upvotes: 3

Related Questions