Thanks for the information.
I cannot reproduce this issue using your shapes:
s1 = [torch.Size([2048, 100, 20]),
      torch.Size([2048, 99, 20]),
      torch.Size([2048, 100, 5]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([2048, 100, 20]), 
      torch.Size([2048, 99, 20]),
      torch.Size([2048, 100, 5])]

x1 = [torch.randn(s) for s in s1]


s2 = [torch.Size([2048, 100, 20]),
      torch.Size([2048, 99, 20]),
      torch.Size([2048, 100, 5]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([2048, 100, 20]),
      torch.Size([2048, 99, 20]),
      torch.Size([2048, 100, 5])]

x2 = [torch.randn(s) for s in s2]


s3 = [torch.Size([10726, 100, 20]),
      torch.Size([10726, 99, 20]),
      torch.Size([10726, 100, 5]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([1, 20]),
      torch.Size([1, 20]),
      torch.Size([1]),
      torch.Size([10726, 100, 20]),
      torch.Size([10726, 99, 20]),
      torch.Size([10726, 100, 5])]
    
x3 = [torch.randn(s) for s in s3]
    
torch.save(x1, 'x1.pt')
torch.save(x2, 'x2.pt')
torch.save(x3, 'x3.pt')

import os
print(os.path.getsize('x1.pt'))
> 73402073
print(os.path.getsize('x2.pt'))
> 73402073
print(os.path.getsize('x3.pt'))
> 384421593

Could you check my code for differences?