Skip to content

feat: Add support for general-purpose function acceleration in Dynamo [6 / x] #1980

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

Conversation

gs-olive
Copy link
Collaborator

@gs-olive gs-olive commented Jun 5, 2023

Description

  • Add functionality for advanced exclusion of both function and module-type nodes in Torch-TRT
  • Add sample exclusion for torch.einsum function which can be accelerated as a single unit via TRT
  • Add utilities and improve module and function-level exclusion mechanisms
  • Add test cases for new exclusion mechanism

Fixes #1959

Type of change

  • New feature (non-breaking change which adds functionality)

Checklist:

  • [ x ] My code follows the style guidelines of this project (You can use the linters)
  • [ x ] I have performed a self-review of my own code
  • [ x ] I have commented my code, particularly in hard-to-understand areas and hacks
  • [ x ] I have made corresponding changes to the documentation
  • [ x ] I have added tests to verify my fix or my feature
  • [ x ] New and existing unit tests pass locally with my changes
  • [ x ] I have added the relevant labels to my PR in so that relevant reviewers are notified

@gs-olive gs-olive added component: dynamo Issues relating to the `torch.compile` or `torch._dynamo.export` paths Story: Dynamo Compile Improvements Issues relating to improvement of the Dynamo compile path labels Jun 5, 2023
@gs-olive gs-olive requested a review from narendasan June 5, 2023 17:01
@gs-olive gs-olive self-assigned this Jun 5, 2023
@github-actions github-actions bot added the component: api [Python] Issues re: Python API label Jun 5, 2023
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from 80b898a to d235c0f Compare June 5, 2023 17:19
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from a3dd0c8 to 2003b07 Compare June 5, 2023 17:21
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

Copy link
Collaborator

@narendasan narendasan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from d235c0f to a0ff354 Compare June 8, 2023 20:12
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 2003b07 to 9e805d1 Compare June 8, 2023 20:14
@gs-olive gs-olive changed the title feat: Add support for general-purpose function exclusion in Dynamo [5 / x] feat: Add support for general-purpose function exclusion in Dynamo [8 / x] Jun 8, 2023
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from a0ff354 to b16d17b Compare June 8, 2023 23:30
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 9e805d1 to 36989b8 Compare June 8, 2023 23:31
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from b16d17b to 54843d3 Compare June 9, 2023 04:10
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 36989b8 to 50ce3ed Compare June 9, 2023 04:10
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from 54843d3 to c0715f2 Compare June 14, 2023 00:38
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 50ce3ed to 7f8eacb Compare June 14, 2023 00:39
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive changed the title feat: Add support for general-purpose function exclusion in Dynamo [8 / x] feat: Add support for general-purpose function exclusion in Dynamo [6 / x] Jun 14, 2023
@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from c0715f2 to 57215f1 Compare June 21, 2023 00:56
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 7f8eacb to 97d4c5b Compare June 21, 2023 00:57
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from 57215f1 to fbe12e3 Compare June 23, 2023 03:19
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 97d4c5b to 5e393bc Compare June 23, 2023 03:20
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive changed the title feat: Add support for general-purpose function exclusion in Dynamo [6 / x] feat: Add support for general-purpose function acceleration in Dynamo [6 / x] Jun 26, 2023
@gs-olive gs-olive force-pushed the dynamo_module_level_acceleration branch from fbe12e3 to 7e2388f Compare June 28, 2023 19:48
- Add functionality for advanced exclusion of both function and
module-type nodes in Torch-TRT
- Add sample exclusion for `torch.einsum` function which can be
accelerated as a single unit via TRT
- Add utilities and improve module and function-level exclusion
mechanisms
- Add test cases for new exclusion mechanism
@gs-olive gs-olive force-pushed the dynamo_general_purpose_acceleration branch from 5e393bc to 00a20c1 Compare June 28, 2023 19:49
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to C++ style guidelines

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code conforms to Python style guidelines

@gs-olive gs-olive merged commit f26ca80 into dynamo_module_level_acceleration Jun 29, 2023
@gs-olive gs-olive deleted the dynamo_general_purpose_acceleration branch June 29, 2023 00:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla signed component: api [Python] Issues re: Python API component: dynamo Issues relating to the `torch.compile` or `torch._dynamo.export` paths Story: Dynamo Compile Improvements Issues relating to improvement of the Dynamo compile path
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants