[FSDP] Make env var and dataclass flag consistent for `cpu_ram_efficient_loading` by SumanthRH · Pull Request #3307 · huggingface/accelerate
What does this PR do?
Makes environment variable and dataclass consistent for cpu_ram_efficient_loading. Currently, there's an inconsistency when the FSDP plugin is initialized in a standalone fashion: the cpu_ram_efficient_loading flag can be set to True but if the user doesn't use accelerate launch , then the environment variable FSDP_CPU_RAM_EFFICIENT_LOADING would not be set. This environment variable is actually used by transformers to initialize parameters efficiently in the process group (See: #2100 (comment) for details on how this happens)
I can see a previous PR #2998 that tried to make all env vars optional, but looks like this was left.
Fixes # (issue)
Before submitting
- This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
- Did you read the contributor guideline,
Pull Request section? - Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case. - Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings. - Did you write any new necessary tests?
Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.
cc @muellerzr