I think data_parallel should work with a scripted model, as it would only chunk the inputs and transfer them to all specified GPUs as well as copying the model to these devices, as long as the eager model also runs fine in data parallel (i.e. no device mismatches are raised due to a wrong usage of a specific device inside the model).