Skip to content

Remove Trainer(multiple_trainloader_mode) in favor of CombinedLoader(mode) #16800

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Feb 20, 2023

Conversation

carmocca
Copy link
Contributor

@carmocca carmocca commented Feb 17, 2023

What does this PR do?

Resolves these follow-ups from #16726

  • Trainer.evaluation_dataloaders should not be a forced list
  • Allow passing CombinedLoaders, remove trainer flag for the mode

And some TODOs I added.

cc @justusschock @awaelchli @carmocca @Borda

@carmocca carmocca added refactor data handling Generic data-related topic trainer: argument pl Generic label for PyTorch Lightning package labels Feb 17, 2023
@carmocca carmocca added this to the 2.0 milestone Feb 17, 2023
@carmocca carmocca self-assigned this Feb 17, 2023
@github-actions github-actions bot added the fabric lightning.fabric.Fabric label Feb 17, 2023
@carmocca carmocca changed the title Update Remove Trainer(multiple_trainloader_mode) in favor of CombinedLoader(mode) Feb 17, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Feb 17, 2023

⚡ Required checks status: All passing 🟢

Groups summary

🟢 pytorch_lightning: Tests workflow
Check ID Status
pl-cpu (macOS-11, lightning, 3.8, 1.11) success
pl-cpu (macOS-11, lightning, 3.9, 1.12) success
pl-cpu (macOS-11, lightning, 3.10, 1.13) success
pl-cpu (macOS-11, lightning, 3.8, 1.11, oldest) success
pl-cpu (ubuntu-20.04, lightning, 3.9, 1.11) success
pl-cpu (ubuntu-20.04, lightning, 3.10, 1.12) success
pl-cpu (ubuntu-20.04, lightning, 3.10, 1.13) success
pl-cpu (ubuntu-20.04, lightning, 3.8, 1.11, oldest) success
pl-cpu (windows-2022, lightning, 3.9, 1.11) success
pl-cpu (windows-2022, lightning, 3.10, 1.12) success
pl-cpu (windows-2022, lightning, 3.10, 1.13) success
pl-cpu (windows-2022, lightning, 3.8, 1.11, oldest) success
pl-cpu (macOS-11, pytorch, 3.8, 1.13) success
pl-cpu (ubuntu-20.04, pytorch, 3.8, 1.13) success
pl-cpu (windows-2022, pytorch, 3.8, 1.13) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py, src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py, tests/tests_pytorch/accelerators/test_ipu.py, tests/tests_pytorch/callbacks/test_prediction_writer.py, tests/tests_pytorch/loops/test_prediction_loop.py, tests/tests_pytorch/models/test_cpu.py, tests/tests_pytorch/models/test_restore.py, tests/tests_pytorch/trainer/connectors/test_data_connector.py, tests/tests_pytorch/trainer/flags/test_limit_batches.py, tests/tests_pytorch/trainer/flags/test_overfit_batches.py, tests/tests_pytorch/trainer/test_dataloaders.py, tests/tests_pytorch/trainer/test_supporters.py, tests/tests_pytorch/trainer/test_trainer.py, tests/tests_pytorch/tuner/test_scale_batch_size.py.

🟢 pytorch_lightning: Azure GPU
Check ID Status
pytorch-lightning (GPUs) success

These checks are required after the changes to src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py, tests/tests_pytorch/accelerators/test_ipu.py, tests/tests_pytorch/callbacks/test_prediction_writer.py, tests/tests_pytorch/loops/test_prediction_loop.py, tests/tests_pytorch/models/test_cpu.py, tests/tests_pytorch/models/test_restore.py, tests/tests_pytorch/trainer/connectors/test_data_connector.py, tests/tests_pytorch/trainer/flags/test_limit_batches.py, tests/tests_pytorch/trainer/flags/test_overfit_batches.py, tests/tests_pytorch/trainer/test_dataloaders.py, tests/tests_pytorch/trainer/test_supporters.py, tests/tests_pytorch/trainer/test_trainer.py, tests/tests_pytorch/tuner/test_scale_batch_size.py, src/lightning/fabric/utilities/data.py.

🟢 pytorch_lightning: Azure HPU
Check ID Status
pytorch-lightning (HPUs) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py, src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py, tests/tests_pytorch/accelerators/test_ipu.py, tests/tests_pytorch/callbacks/test_prediction_writer.py, tests/tests_pytorch/loops/test_prediction_loop.py, tests/tests_pytorch/models/test_cpu.py, tests/tests_pytorch/models/test_restore.py, tests/tests_pytorch/trainer/connectors/test_data_connector.py, tests/tests_pytorch/trainer/flags/test_limit_batches.py, tests/tests_pytorch/trainer/flags/test_overfit_batches.py, tests/tests_pytorch/trainer/test_dataloaders.py, tests/tests_pytorch/trainer/test_supporters.py, tests/tests_pytorch/trainer/test_trainer.py, tests/tests_pytorch/tuner/test_scale_batch_size.py.

🟢 pytorch_lightning: Azure IPU
Check ID Status
pytorch-lightning (IPUs) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py, src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py, tests/tests_pytorch/accelerators/test_ipu.py, tests/tests_pytorch/callbacks/test_prediction_writer.py, tests/tests_pytorch/loops/test_prediction_loop.py, tests/tests_pytorch/models/test_cpu.py, tests/tests_pytorch/models/test_restore.py, tests/tests_pytorch/trainer/connectors/test_data_connector.py, tests/tests_pytorch/trainer/flags/test_limit_batches.py, tests/tests_pytorch/trainer/flags/test_overfit_batches.py, tests/tests_pytorch/trainer/test_dataloaders.py, tests/tests_pytorch/trainer/test_supporters.py, tests/tests_pytorch/trainer/test_trainer.py, tests/tests_pytorch/tuner/test_scale_batch_size.py.

🟢 pytorch_lightning: Docs
Check ID Status
make-doctest (pytorch) success
make-html (pytorch) success

These checks are required after the changes to src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py, docs/source-pytorch/guides/data.rst.

🟢 lightning_fabric: CPU workflow
Check ID Status
fabric-cpu (macOS-11, lightning, 3.8, 1.11) success
fabric-cpu (macOS-11, lightning, 3.9, 1.12) success
fabric-cpu (macOS-11, lightning, 3.10, 1.13) success
fabric-cpu (macOS-11, lightning, 3.8, 1.11, oldest) success
fabric-cpu (ubuntu-20.04, lightning, 3.9, 1.11) success
fabric-cpu (ubuntu-20.04, lightning, 3.10, 1.12) success
fabric-cpu (ubuntu-20.04, lightning, 3.10, 1.13) success
fabric-cpu (ubuntu-20.04, lightning, 3.8, 1.11, oldest) success
fabric-cpu (windows-2022, lightning, 3.9, 1.11) success
fabric-cpu (windows-2022, lightning, 3.10, 1.12) success
fabric-cpu (windows-2022, lightning, 3.10, 1.13) success
fabric-cpu (windows-2022, lightning, 3.8, 1.11, oldest) success
fabric-cpu (macOS-11, fabric, 3.8, 1.13) success
fabric-cpu (ubuntu-20.04, fabric, 3.8, 1.13) success
fabric-cpu (windows-2022, fabric, 3.8, 1.13) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py.

🟢 lightning_fabric: Azure GPU
Check ID Status
lightning-fabric (GPUs) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py.

🟢 mypy
Check ID Status
mypy success

These checks are required after the changes to src/lightning/fabric/utilities/data.py, src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py.

🟢 install
Check ID Status
install-pkg (ubuntu-22.04, app, 3.8) success
install-pkg (ubuntu-22.04, app, 3.10) success
install-pkg (ubuntu-22.04, fabric, 3.8) success
install-pkg (ubuntu-22.04, fabric, 3.10) success
install-pkg (ubuntu-22.04, pytorch, 3.8) success
install-pkg (ubuntu-22.04, pytorch, 3.10) success
install-pkg (ubuntu-22.04, lightning, 3.8) success
install-pkg (ubuntu-22.04, lightning, 3.10) success
install-pkg (ubuntu-22.04, notset, 3.8) success
install-pkg (ubuntu-22.04, notset, 3.10) success
install-pkg (macOS-12, app, 3.8) success
install-pkg (macOS-12, app, 3.10) success
install-pkg (macOS-12, fabric, 3.8) success
install-pkg (macOS-12, fabric, 3.10) success
install-pkg (macOS-12, pytorch, 3.8) success
install-pkg (macOS-12, pytorch, 3.10) success
install-pkg (macOS-12, lightning, 3.8) success
install-pkg (macOS-12, lightning, 3.10) success
install-pkg (macOS-12, notset, 3.8) success
install-pkg (macOS-12, notset, 3.10) success
install-pkg (windows-2022, app, 3.8) success
install-pkg (windows-2022, app, 3.10) success
install-pkg (windows-2022, fabric, 3.8) success
install-pkg (windows-2022, fabric, 3.10) success
install-pkg (windows-2022, pytorch, 3.8) success
install-pkg (windows-2022, pytorch, 3.10) success
install-pkg (windows-2022, lightning, 3.8) success
install-pkg (windows-2022, lightning, 3.10) success
install-pkg (windows-2022, notset, 3.8) success
install-pkg (windows-2022, notset, 3.10) success

These checks are required after the changes to src/lightning/fabric/utilities/data.py, src/lightning/pytorch/callbacks/batch_size_finder.py, src/lightning/pytorch/loops/evaluation_loop.py, src/lightning/pytorch/loops/fit_loop.py, src/lightning/pytorch/loops/prediction_loop.py, src/lightning/pytorch/trainer/connectors/data_connector.py, src/lightning/pytorch/trainer/supporters.py, src/lightning/pytorch/trainer/trainer.py, src/lightning/pytorch/utilities/data.py.

🟢 link-check
Check ID Status
markdown-link-check success

These checks are required after the changes to src/lightning/pytorch/CHANGELOG.md.


Thank you for your contribution! 💜

Note
This comment is automatically generated and updates for 60 minutes every 180 seconds. If you have any other questions, contact carmocca for help.

@carmocca carmocca added the breaking change Includes a breaking change label Feb 17, 2023
@codecov
Copy link

codecov bot commented Feb 17, 2023

Codecov Report

Merging #16800 (7777e55) into master (81b7c30) will decrease coverage by 22%.
The diff coverage is 98%.

Additional details and impacted files
@@            Coverage Diff            @@
##           master   #16800     +/-   ##
=========================================
- Coverage      82%      59%    -22%     
=========================================
  Files         437      412     -25     
  Lines       31581    31278    -303     
=========================================
- Hits        25783    18533   -7250     
- Misses       5798    12745   +6947     

@mergify mergify bot removed the has conflicts label Feb 20, 2023
@mergify mergify bot added the ready PRs ready to be merged label Feb 20, 2023
@carmocca carmocca merged commit 781768d into master Feb 20, 2023
@carmocca carmocca deleted the refactor/remove-trainer-combined-mode branch February 20, 2023 12:32
cameronraysmith referenced this pull request in pinellolab/pyrovelocity Feb 25, 2024
cameronraysmith added a commit to pinellolab/pyrovelocity that referenced this pull request Feb 25, 2024
```
Lightning-AI/pytorch-lightning#16800 (comment)
```
Signed-off-by: Cameron Smith <cameron.ray.smith@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change Includes a breaking change data handling Generic data-related topic fabric lightning.fabric.Fabric pl Generic label for PyTorch Lightning package ready PRs ready to be merged refactor trainer: argument
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants