For me it sounds (I have never seen that error), that you are freezing layer after calling dataparallel. I would say that replicated models are pointing to original model and that’s why they are no longer leaf variables. Thus, when you try to freeze the model it just throws that error.
Could you try to freeze weights before calling dataparallel?