It is for demonstrational purposes. Without break it lists ALL parameters twice for me. Notice how all elements are identical in my example above.
My only guess would be that you are running an older version of PyTorch or the model implements a custom parameters() method with behavior unlike the default nn.Module.
Like I said, you can try to copy the entire model/parameters to have two identical objects to loop through like:
from copy import deepcopy

my_parameters = list(iter(model.parameters()))
my_parameters2 = deepcopy(my_parameters)

for param in my_parameters:
    par1.append(param.grad.view(-1))

for param in my_parameters2 :
    par2.append(param.grad.view(-1))