-
Notifications
You must be signed in to change notification settings - Fork 794
[slimtensor] Add common_shims_slim with basic property getters #16454
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
base: gh/gasoonjia/96/base
Are you sure you want to change the base?
Conversation
Add SlimTensor-based implementations of basic property getter AOTI shim functions:
1. `aoti_torch_get_data_ptr()` - Returns pointer to tensor data
2. `aoti_torch_get_sizes()` - Returns pointer to sizes array (SlimTensor stores int64_t directly)
3. `aoti_torch_get_strides()` - Returns pointer to strides array (SlimTensor stores int64_t directly)
4. `aoti_torch_get_dtype()` - Returns the scalar type as int32_t
5. `aoti_torch_get_dim()` - Returns the number of dimensions
Key design:
- Create a new common_shim_slim.h for working on new API while not impact the current pipeline. Will use common_shim_slim.{h/cpp} to replace current common_shim.{h/cpp} when everything has been set up.
- Uses `#ifdef CUDA_AVAILABLE` conditional compilation to seperate the implementation between cuda backend and mps backend since SlimTensor hasn't have mps support yet. Will remove the branch once SlimTensor support mps.
- Refactored to a header-only library so the caller's preprocessor flags determine which tensor type is used. This design supports both CUDA backend (SlimTensor) and MPS backend (ETensor) from a single library.
Differential Revision: [D90126254](https://our.internmc.facebook.com/intern/diff/D90126254/)
[ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/16454
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 7676946 with merge base fd6fa87 ( NEW FAILURES - The following jobs have failed:
UNSTABLE - The following job is marked as unstable, possibly due to flakiness on trunk:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
Stack from ghstack (oldest at bottom):
Add SlimTensor-based implementations of basic property getter AOTI shim functions:
aoti_torch_get_data_ptr()- Returns pointer to tensor dataaoti_torch_get_sizes()- Returns pointer to sizes array (SlimTensor stores int64_t directly)aoti_torch_get_strides()- Returns pointer to strides array (SlimTensor stores int64_t directly)aoti_torch_get_dtype()- Returns the scalar type as int32_taoti_torch_get_dim()- Returns the number of dimensionsKey design:
#ifdef CUDA_AVAILABLEconditional compilation to seperate the implementation between cuda backend and mps backend since SlimTensor hasn't have mps support yet. Will remove the branch once SlimTensor support mps.Differential Revision: D90126254