utils.py 591 Bytes
Newer Older
rusty1s's avatar
rusty1s committed
1
import torch
rusty1s's avatar
rusty1s committed
2
from torch.testing import get_all_dtypes
rusty1s's avatar
rusty1s committed
3

rusty1s's avatar
rusty1s committed
4
5
6
7
8
dtypes = get_all_dtypes()
dtypes.remove(torch.half)
dtypes.remove(torch.short)  # TODO: PyTorch `atomicAdd` bug with short type.
dtypes.remove(torch.uint8)  # We cannot properly test unsigned values.
dtypes.remove(torch.int8)  # Overflow on gradient computations :(
rusty1s's avatar
rusty1s committed
9

rusty1s's avatar
rusty1s committed
10
11
12
devices = [torch.device('cpu')]
if torch.cuda.is_available():  # pragma: no cover
    devices += [torch.device('cuda:{}'.format(torch.cuda.current_device()))]
rusty1s's avatar
rusty1s committed
13

rusty1s's avatar
rusty1s committed
14
15
16

def tensor(x, dtype, device):
    return None if x is None else torch.tensor(x, dtype=dtype, device=device)