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

[dtensor] skip pytree when not necessary #110132

Closed
wants to merge 7 commits into from

Commits on Sep 27, 2023

  1. [dtensor] skip pytree when not necessary

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 27, 2023
    Configuration menu
    Copy the full SHA
    56b3d3f View commit details
    Browse the repository at this point in the history

Commits on Sep 28, 2023

  1. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    da0080c View commit details
    Browse the repository at this point in the history
  2. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    2c674c0 View commit details
    Browse the repository at this point in the history
  3. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    6322903 View commit details
    Browse the repository at this point in the history
  4. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    ed322f4 View commit details
    Browse the repository at this point in the history
  5. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    e661f9f View commit details
    Browse the repository at this point in the history
  6. Update on "[dtensor] skip pytree when not necessary"

    pytree is a great tool, but it sometimes considers to be evil for
    tensor subclasses, it's useful to implement subclass quickly, but it:
    * exposes non-trival CPU overhead
    * many ops don't need pytree, only the one with list/dict ops needs
    * blindly use pytree to re-wrap have semantic issues for inplace/out
    ops
    
    This PR avoid using pytree for most ops during torch_dispatch and only
    enable it for certain ops
    
    [ghstack-poisoned]
    wanchaol committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    9be485d View commit details
    Browse the repository at this point in the history