This should work:
x = torch.tensor([[ 1.0000,  0.5000,  0.0000],
                  [ 0.5000,  1.0000,  0.0000]])
    
y = x.unsqueeze(0).repeat(32, 1, 1) # copies the data
z = x.unsqueeze(0).expand(32, -1, -1) # returns view

Note, that .expand returns a view and sets th stride for the expanded dimension to 0, while .repeat copies the data.