def METHOD_NAME(self):
    spec = ChunkShardingSpec(
        dim=0,
        placements=[
            "rank:0/cuda:0",
            "rank:1/cuda:1",
            "rank:2/cuda:2",
            "rank:3/cuda:3",
        ],
    )
    st = sharded_tensor.rand(spec, (12, 5))
    ones_st = sharded_tensor.ones(spec, (12, 5))
    self.assertFalse(torch.equal(ones_st, st))
    st.copy_(ones_st)
    self.assertTrue(torch.equal(st, ones_st))
    # no grad inplace_copy should work between two with different requires_grad
    st_with_grad = sharded_tensor.rand(spec, (12, 5), requires_grad=True)
    self.assertTrue(st_with_grad.requires_grad)
    self.assertFalse(ones_st.requires_grad)
    with torch.no_grad():
        st_with_grad.copy_(ones_st)
        self.assertEqual(st_with_grad.local_tensor(), ones_st.local_tensor())