Skip to content
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

Bump lightning[pytorch-extra] from 2.2.5 to 2.3.0 in /requirements #2119

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 14, 2024

Bumps lightning[pytorch-extra] from 2.2.5 to 2.3.0.

Release notes

Sourced from lightning[pytorch-extra]'s releases.

Lightning v2.3: Tensor Parallelism and 2D Parallelism

Lightning AI is excited to announce the release of Lightning 2.3 ⚡

Did you know? The Lightning philosophy extends beyond a boilerplate-free deep learning framework: We've been hard at work bringing you Lightning Studio. Code together, prototype, train, deploy, host AI web apps. All from your browser, with zero setup.

This release introduces experimental support for Tensor Parallelism and 2D Parallelism, PyTorch 2.3 support, and several bugfixes and stability improvements.

Highlights

Tensor Parallelism (beta)

Tensor parallelism (TP) is a technique that splits up the computation of selected layers across GPUs to save memory and speed up distributed models. To enable TP as well as other forms of parallelism, we introduce a ModelParallelStrategy for both Lightning Trainer and Fabric. Under the hood, TP is enabled through new experimental PyTorch APIs like DTensor and torch.distributed.tensor.parallel.

PyTorch Lightning

Enabling TP in a model with PyTorch Lightning requires you to implement the LightningModule.configure_model() method where you convert selected layers of a model to paralellized layers. This is an advanced feature, because it requires a deep understanding of the model architecture. Open the tutorial Studio to learn the basics of Tensor Parallelism.

 

import lightning as L
from lightning.pytorch.strategies import ModelParallelStrategy
from torch.distributed.tensor.parallel import ColwiseParallel, RowwiseParallel
from torch.distributed.tensor.parallel import parallelize_module
1. Implement the configure_model() method in LightningModule
class LitModel(L.LightningModule):
def init(self):
super().init()
self.model = FeedForward(8192, 8192)
</tr></table>

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Packaging and dependencies python Pull requests that update Python code labels Jun 14, 2024
@adamjstewart
Copy link
Collaborator

Broken due to Lightning-AI/pytorch-lightning#19977

@dependabot dependabot bot force-pushed the dependabot/pip/requirements/lightning-pytorch-extra--2.3.0 branch 2 times, most recently from ce43a80 to 7947b62 Compare June 25, 2024 08:15
@dependabot dependabot bot force-pushed the dependabot/pip/requirements/lightning-pytorch-extra--2.3.0 branch from 7947b62 to 70c652a Compare June 28, 2024 22:52
@robmarkcole
Copy link
Contributor

@adamjstewart
Copy link
Collaborator

2.3.0 and 2.3.1 are both broken due to the same bug. I don't know why dependabot opened two separate PRs for 2.3.0 and 2.3.1, but we can't upgrade to either just yet.

Bumps [lightning[pytorch-extra]](https://github.com/Lightning-AI/lightning) from 2.2.5 to 2.3.0.
- [Release notes](https://github.com/Lightning-AI/lightning/releases)
- [Commits](Lightning-AI/pytorch-lightning@2.2.5...2.3.0)

---
updated-dependencies:
- dependency-name: lightning[pytorch-extra]
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/pip/requirements/lightning-pytorch-extra--2.3.0 branch from 70c652a to 4cccbf9 Compare July 2, 2024 08:45
@adamjstewart
Copy link
Collaborator

@CarlosGomes98
Copy link

Should the pyproject.toml set the lightning dependency to <2.3.0? At the moment, if I understand correctly, lightning==2.3.1 will be installed, which breaks the trainers

@adamjstewart
Copy link
Collaborator

@CarlosGomes98 let me dig a bit deeper to understand what changed and whether or not it's only the format of the config files or also command-line usage. Also want to determine if this was intentional or accidental. Once I know the answers to those questions, we can either fix the bug in lightning or change TorchGeo to support newer lightning. I don't want to get stuck on older versions of lightning for a silly reason like this. Our release cycle is slow enough that by the time a version pin made it into a released version, the bug will likely be fixed already anyway (for better or for worse, I would like to speed up our release cycle someday).

@adamjstewart
Copy link
Collaborator

@CarlosGomes98 I think you're right, let's add an upper bound. Hopefully this will get fixed before our next release, but just in case let's prevent broken installs.

@adamjstewart
Copy link
Collaborator

Closing until Lightning-AI/pytorch-lightning#19977 is resolved.

Copy link
Contributor Author

dependabot bot commented on behalf of github Jul 8, 2024

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@adamjstewart adamjstewart deleted the dependabot/pip/requirements/lightning-pytorch-extra--2.3.0 branch July 8, 2024 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Packaging and dependencies python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants