it sounds good.
I just found another great solution.
we can define an object having cuda_array_interface and pass through torch.as_tensor, and we can make sure both object share the same memory location.