mirror of
https://github.com/wassname/pytorch-lightning.git
synced 2026-09-12 12:40:20 +08:00
Use callable object for patching dataloaders (#971)
* Use callable object for patching dataloaders * Add test for ddp with dataloaders passed to fit() * Update pytorch_lightning/trainer/trainer.py Co-Authored-By: Jirka Borovec <Borda@users.noreply.github.com> * Update pytorch_lightning/trainer/trainer.py Co-Authored-By: Jirka Borovec <Borda@users.noreply.github.com> Co-authored-by: Jirka Borovec <Borda@users.noreply.github.com>
This commit is contained in:
committed by
J. Borovec
co-authored by
Jirka Borovec
parent
bd3dc788cc
commit
d69455a466
@@ -66,6 +66,31 @@ def test_multi_gpu_model_ddp(tmpdir):
|
||||
tutils.run_model_test(trainer_options, model)
|
||||
|
||||
|
||||
def test_ddp_all_dataloaders_passed_to_fit(tmpdir):
|
||||
"""Make sure DDP works with dataloaders passed to fit()"""
|
||||
if not tutils.can_run_gpu_test():
|
||||
return
|
||||
|
||||
tutils.reset_seed()
|
||||
tutils.set_random_master_port()
|
||||
|
||||
model, hparams = tutils.get_model()
|
||||
trainer_options = dict(default_save_path=tmpdir,
|
||||
show_progress_bar=False,
|
||||
max_epochs=1,
|
||||
train_percent_check=0.4,
|
||||
val_percent_check=0.2,
|
||||
gpus=[0, 1],
|
||||
distributed_backend='ddp')
|
||||
|
||||
fit_options = dict(train_dataloader=model.train_dataloader(),
|
||||
val_dataloaders=model.val_dataloader())
|
||||
|
||||
trainer = Trainer(**trainer_options)
|
||||
result = trainer.fit(model, **fit_options)
|
||||
assert result == 1, "DDP doesn't work with dataloaders passed to fit()."
|
||||
|
||||
|
||||
def test_optimizer_return_options():
|
||||
tutils.reset_seed()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user