I do:
In [1]: import torch

In [2]: a = torch.rand(1024*1024*64)

In [3]: a_cuda = a.cuda()

In [4]: type(a_cuda)
Out[4]: torch.cuda.FloatTensor

Then I do nvidia-smi
What I expect to see:
 [something something] 256MB

(ie 64 million * 4 bytes per float)
What I actually see:
Tue Aug 15 12:11:49 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 361.77                 Driver Version: 361.77                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla M60           Off  | 0000:00:1E.0     Off |                    0 |
| N/A   36C    P0    39W / 150W |    502MiB /  7618MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0     52947    C   /mldata/conda/envs/pytorch/bin/python          500MiB |
+-----------------------------------------------------------------------------+

ie ~512MB.
Why is this?