contiguous, otherwise it returns a new contiguous tensor by copying
  data.
For a more detailed walk-through of PyTorch internal implementation,
please refer to ezyang's blogpost about PyTorch Internals.