Thank you for the reply! It appears that most of the info in that thread is about two GPU systems, which mine is not. The only potentially relevant suggestion I’m seeing is about removing the .nv file, which I don’t seem to have on my system.
I’m thinking my issue may be something like an incomplete install or missing dependencies or something?
If I use
linear = nn.Linear(2, 2)
x = torch.randn(2, 2)
print(linear(x))

everything works fine, but if instead I use
linear = nn.Linear(2, 2).cuda()
x = torch.randn(2, 2).cuda()
print(linear(x))

I get
RuntimeError                              Traceback (most recent call last)
<ipython-input-3-81612b3daf91> in <module>
      4 linear = nn.Linear(2, 2).cuda()
      5 x = torch.randn(2, 2).cuda()
----> 6 print(linear(x))

~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/module.py in __call__(self, *input, **kwargs)
    537             result = self._slow_forward(*input, **kwargs)
    538         else:
--> 539             result = self.forward(*input, **kwargs)
    540         for hook in self._forward_hooks.values():
    541             hook_result = hook(self, input, result)

~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/linear.py in forward(self, input)
     85 
     86     def forward(self, input):
---> 87         return F.linear(input, self.weight, self.bias)
     88 
     89     def extra_repr(self):

~/anaconda3/lib/python3.7/site-packages/torch/nn/functional.py in linear(input, weight, bias)
   1363     if input.dim() == 2 and bias is not None:
   1364         # fused op is marginally faster
-> 1365         ret = torch.addmm(bias, input, weight.t())
   1366     else:
   1367         output = input.matmul(weight.t())

RuntimeError: cublas runtime error : library not initialized at ../aten/src/THC/THCGeneral.cpp:216