-
Notifications
You must be signed in to change notification settings - Fork 169
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
Add high-level operator interface #708
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/ao/708
Note: Links to docs will display an error until the docs builds have been completed. ✅ No FailuresAs of commit 72cfb21 with merge base ac8ce4c (): This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This pull request was exported from Phabricator. Differential Revision: D60321449 |
This pull request was exported from Phabricator. Differential Revision: D60321449 |
Summary: Pull Request resolved: pytorch#708 Here is a draft of the high-level kernel operator. This is something I quickly put together to get early feedback, and it will be iterated. It closely follows what I had in the design doc, but I think it's easier to see how things fit together in the code. The operator uses parallel_for and get_num_threads. At build time, we need to link these to ET/PT implementations. In this diff, they are single-threaded or OMP-backed implementations that I threw together. The operator (inside channelwise_8bit_activation_groupwise_lowbit_weight.h) depends on a ukernel_config and tiling configs. But in the wrapper, these can be hidden if desired (see examples/ for how). Reviewed By: digantdesai Differential Revision: D60321449
a446838
to
c617411
Compare
Summary: Pull Request resolved: pytorch#708 Here is a draft of the high-level kernel operator. This is something I quickly put together to get early feedback, and it will be iterated. It closely follows what I had in the design doc, but I think it's easier to see how things fit together in the code. The operator uses parallel_for and get_num_threads. At build time, we need to link these to ET/PT implementations. In this diff, they are single-threaded or OMP-backed implementations that I threw together. The operator (inside channelwise_8bit_activation_groupwise_lowbit_weight.h) depends on a ukernel_config and tiling configs. But in the wrapper, these can be hidden if desired (see examples/ for how). Reviewed By: digantdesai Differential Revision: D60321449
This pull request was exported from Phabricator. Differential Revision: D60321449 |
c617411
to
72cfb21
Compare
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.
stamping for experimental folder
Summary:
Here is a draft of the high-level kernel operator. This is something I quickly put together to get early feedback, and it will be iterated. It closely follows what I had in the design doc, but I think it's easier to see how things fit together in the code.
The operator uses parallel_for and get_num_threads. At build time, we need to link these to ET/PT implementations. In this diff, they are single-threaded or OMP-backed implementations that I threw together.
The operator (inside channelwise_8bit_activation_groupwise_lowbit_weight.h) depends on a ukernel_config and tiling configs. But in the wrapper, these can be hidden if desired (see examples/ for how).
Reviewed By: digantdesai
Differential Revision: D60321449