This piece of code:
import torch

def create_one(batch_size):
    return torch.ByteTensor(batch_size, 128, 128)

# torch.cuda.is_available()                                                                                                                                                                    

pool = torch.multiprocessing.Pool(torch.multiprocessing.cpu_count())

data = pool.map(create_one, torch.LongTensor(1000).fill_(100))

works fine, but if the cuda.is_available line is uncommented, it crashes with the following error:
Exception in thread Thread-3:
Traceback (most recent call last):
  File "/home/fleuret/misc/anaconda3/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "/home/fleuret/misc/anaconda3/lib/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/home/fleuret/misc/anaconda3/lib/python3.5/multiprocessing/pool.py", line 429, in _handle_results
    task = get()
  File "/home/fleuret/misc/anaconda3/lib/python3.5/multiprocessing/connection.py", line 251, in recv
    return ForkingPickler.loads(buf.getbuffer())
  File "/home/fleuret/misc/anaconda3/lib/python3.5/site-packages/torch/multiprocessing/reductions.py", line 70, in rebuild_storage_fd
    fd = df.detach()
  File "/home/fleuret/misc/anaconda3/lib/python3.5/multiprocessing/resource_sharer.py", line 58, in detach
    return reduction.recv_handle(conn)
  File "/home/fleuret/misc/anaconda3/lib/python3.5/multiprocessing/reduction.py", line 181, in recv_handle
    return recvfds(s, 1)[0]
  File "/home/fleuret/misc/anaconda3/lib/python3.5/multiprocessing/reduction.py", line 160, in recvfds
    len(ancdata))
RuntimeError: received 0 items of ancdata

Did I miss something? Works fine on a machine without cuda.