Sparse half embeddings on cuda (#19695)
Summary:
```
import torch
a = torch.nn.Embedding(3, 4, sparse=True).half().cuda()
a(torch.LongTensor([1, 0]).cuda()).sum().backward()
```
gave: `RuntimeError: torch.cuda.sparse.HalfTensor is not enabled`
This PR enables sparse.HalfTensor on cuda. Still won't work for CPU.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/19695
Differential Revision: D15281162
Pulled By: nairbv
fbshipit-source-id: 0d83d946a059393bd53d8b8102e2daa9b4c02588