-
Notifications
You must be signed in to change notification settings - Fork 26.3k
[Inductor] Update AttrsDescriptor instantiation for Triton changes #137458
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
[Inductor] Update AttrsDescriptor instantiation for Triton changes #137458
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/137458
Note: Links to docs will display an error until the docs builds have been completed. ✅ No FailuresAs of commit 5d08a70 with merge base 39c5048 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
@pytorchbot label "topic: not user facing" |
|
Tests are failing, you can't import triton in global scope since PyTorch needs to run without it installed. |
74a8e7b to
27e91e2
Compare
|
@jansel I updated this PR to leave the branch in case Triton is not installed but to remove deprecated attributes and naming. |
|
Pushed a fix for the lint error, all other tests passed. |
|
@jansel I do not think the failing test is related to this PR. On the previous commit (prior to the lint fix) the result was: but on the lint fix commit we're getting just slightly above expected. It looks like a few recent commits on main have similar results (right around 1.50% with some just barely exceeding the threshold). What do you think? |
|
@pytorchbot rebase |
|
Let's see if a rebase fixes that test failure. |
|
@pytorchbot started a rebase job onto refs/remotes/origin/viable/strict. Check the current status here |
|
Successfully rebased |
bb0d8ad to
5d08a70
Compare
|
It looks like the regression did not go away. Is there any reason why this would make compile time worse? We could also update the expected time for the test. |
|
I looked last night and the failure was still there - but today it looks like it went away? Or am I misreading the latest run? |
|
Not sure what happened there... |
|
@pytorchbot merge |
Merge startedYour change will be merged once all checks pass (ETA 0-4 Hours). Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
…ytorch#137458) The `AttrsDescriptor` class has been present in Triton for almost a year now (introduced [here](triton-lang/triton@72c9833)), so we should be able to rely on it existing. I am in the process of supporting the new `AttrsDescriptor` class and @jansel suggested I split changes to the existing class out separately to make sure nothing breaks removing the legacy attribute descriptor attributes. Initially I attempted to remove the branching around detecting whether `AttrsDescriptor` exists but that breaks because PyTorch must build without Triton. So, I went back and updated for the naming introduced in the commit linked above, and also removed two unused attributes `divisible_by_8` and `ids_to_fold` which were removed in Feb 2024 (triton-lang/triton#3122 and triton-lang/triton#3080 respectively). With these changes only the internal workings of the `AttrsDescriptor` class will differ between supported Triton versions, but the data stored will remain consistent. Pull Request resolved: pytorch#137458 Approved by: https://github.com/jansel
The Triton `AttrsDescriptor` object was refactored in triton-lang/triton#4734. These changes add support for the new `AttrsDescriptor` while maintaining backwards compatibility with the existing version. The main changes are different names for the initialized of the descriptor parameters, and a creation via a static method instead of the class constructor. Depends on #137458 which removes some unused logic around the old descriptor. Those changes make this PR cleaner, but if for some reason that old logic is still used I can make adjustments. Use of the new `AttrsDescriptor` depends on triton-lang/triton#4888 Pull Request resolved: #137757 Approved by: https://github.com/jansel
…137458) The `AttrsDescriptor` class has been present in Triton for almost a year now (introduced [here](triton-lang/triton@72c9833)), so we should be able to rely on it existing. I am in the process of supporting the new `AttrsDescriptor` class and @jansel suggested I split changes to the existing class out separately to make sure nothing breaks removing the legacy attribute descriptor attributes. Initially I attempted to remove the branching around detecting whether `AttrsDescriptor` exists but that breaks because PyTorch must build without Triton. So, I went back and updated for the naming introduced in the commit linked above, and also removed two unused attributes `divisible_by_8` and `ids_to_fold` which were removed in Feb 2024 (triton-lang/triton#3122 and triton-lang/triton#3080 respectively). With these changes only the internal workings of the `AttrsDescriptor` class will differ between supported Triton versions, but the data stored will remain consistent. Pull Request resolved: #137458 Approved by: https://github.com/jansel
The Triton `AttrsDescriptor` object was refactored in triton-lang/triton#4734. These changes add support for the new `AttrsDescriptor` while maintaining backwards compatibility with the existing version. The main changes are different names for the initialized of the descriptor parameters, and a creation via a static method instead of the class constructor. Depends on #137458 which removes some unused logic around the old descriptor. Those changes make this PR cleaner, but if for some reason that old logic is still used I can make adjustments. Use of the new `AttrsDescriptor` depends on triton-lang/triton#4888 Pull Request resolved: #137757 Approved by: https://github.com/jansel
The
AttrsDescriptorclass has been present in Triton for almost a year now (introduced here), so we should be able to rely on it existing. I am in the process of supporting the newAttrsDescriptorclass and @jansel suggested I split changes to the existing class out separately to make sure nothing breaks removing the legacy attribute descriptor attributes.Initially I attempted to remove the branching around detecting whether
AttrsDescriptorexists but that breaks because PyTorch must build without Triton. So, I went back and updated for the naming introduced in the commit linked above, and also removed two unused attributesdivisible_by_8andids_to_foldwhich were removed in Feb 2024 (triton-lang/triton#3122 and triton-lang/triton#3080 respectively).With these changes only the internal workings of the
AttrsDescriptorclass will differ between supported Triton versions, but the data stored will remain consistent.cc @voznesenskym @penguinwu @EikanWang @jgong5 @Guobing-Chen @XiaobingSuper @zhuhaozhe @blzheng @wenzhe-nrv @jiayisunx @ipiszy @yf225 @chenyang78 @kadeng @muchulee8 @ColinPeppler @amjames @desertfire @chauhang