-
Notifications
You must be signed in to change notification settings - Fork 685
Enable per-row/per-col grouping in CoreML LUT ops #13674
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
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/13674
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ❌ 2 New Failures, 1 Unrelated FailureAs of commit 3a826fd with merge base 0d0769a ( NEW FAILURES - The following jobs have failed:
BROKEN TRUNK - The following job failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
@metascroy has imported this pull request. If you are a Meta employee, you can view this in D80995383. |
068c6ea
to
89910fe
Compare
@metascroy has imported this pull request. If you are a Meta employee, you can view this in D80995383. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Thanks for adding more LUT support!
One quick question though: In CoreML LUT we allow arbitrary vector axis, is there a reason in torch we support only row or col?
This is still scalar-valued LUT (vector axis is for vector-valued LUT, which is still not supported). The row/col here refer to the granularity of the LUTs as discussed here: https://apple.github.io/coremltools/docs-guides/source/opt-palettization-overview.html The diagram for "per-grouped channel lookup table" corresponds to per-row grouping. If the original tensor has size (n, k), we can support 1 LUT per col_group_size columns (can be specified with block_size = [-1, col_group_size], where -1 is interpreted as n), or we can support 1 LUT per row_group_size rows (can be specified as block_size = [row_group_size, -1], where -1 is interpreted as k). |
@cccclai @digantdesai can I get a stamp for ET to merge? |
@metascroy has imported this pull request. If you are a Meta employee, you can view this in D80995383. |
This PR enables per-row grouping in CoreML LUT ops.