-
Notifications
You must be signed in to change notification settings - Fork 814
[slimtensor] Add aoti_torch_copy_ for SlimTensor #16451
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/93/base
Are you sure you want to change the base?
Conversation
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/16451
Note: Links to docs will display an error until the docs builds have been completed. ⏳ No Failures, 109 PendingAs of commit 2557152 with merge base c487340 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom): * #16565 * #16551 * #16469 * #16457 * #16455 * #16454 * #16453 * #16452 * #16451 * #16450 * #16449 * #16448 * #16447 * #16446 * __->__ #16724 Copy CUDAGuard and CUDAStreamGuard from cuda/runtime/ to aoti/slim/cuda/ to support slimtensor requirement while get rid of potential circular dependency: - cuda_backend/main_functionalities -> aoti/slimtensor -> cuda_backend/cuda_guard This change: - copy guard.h, guard.cpp and test files from backend/cuda_backend to backend/aoti/slim/cuda/ Differential Revision: [D91056808](https://our.internmc.facebook.com/intern/diff/D91056808/)
…v2 (#16446) Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom): * #16565 * #16551 * #16469 * #16457 * #16455 * #16454 * #16453 * #16452 * #16451 * #16450 * #16449 * #16448 * #16447 * __->__ #16446 * #16724 Add SlimTensor-based implementations of AOTI shim functions for tensor creation: 1. `aoti_torch_create_tensor_from_blob_v2()` - Creates a non-owning SlimTensor that wraps existing memory using the `from_blob()` factory Both functions support CPU and CUDA devices and handle all 7 SlimTensor dtypes. Also add `memory_slim.h` and `memory_slim.cpp` with SlimTensor-based shim implementations for working on new API while not impact the current pipeline. Will use memory_slim.{h/cpp} to replace current memory.{h/cpp} when everything has been set up. Differential Revision: [D90126247](https://our.internmc.facebook.com/intern/diff/D90126247/)
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom): * #16565 * #16551 * #16469 * #16457 * #16455 * #16454 * #16453 * #16452 * #16451 * #16450 * #16449 * #16448 * __->__ #16447 * #16446 * #16724 Add SlimTensor-based implementations of AOTI shim functions for tensor creation: `aoti_torch_create_tensor_from_blob_v2()` - Creates a non-owning SlimTensor that wraps existing memory using the `from_blob()` factory Both functions support CPU and CUDA devices and handle all 7 SlimTensor dtypes. Changes: - Add `memory_slim.h` and `memory_slim.cpp` with SlimTensor-based shim implementations - Add `runtime_shims_slim` library target to TARGETS with `CUDA_AVAILABLE=1` preprocessor flag - Add `cuda_shim_slim_cpp_unittest()` function for SlimTensor test targets Differential Revision: [D90126244](https://our.internmc.facebook.com/intern/diff/D90126244/)
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Pull Request resolved: #16451 Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). ghstack-source-id: 336294938 @exported-using-ghexport Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/)
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Pull Request resolved: #16451 Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). ghstack-source-id: 336304836 @exported-using-ghexport Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/)
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom): * #16451 * #16450 * #16449 * __->__ #16448 Add `aoti_torch_delete_tensor_object()` - Deletes a tensor object. SlimTensor uses SharedPtr-based reference counting, so simply deleting the tensor automatically handles storage deallocation when the last reference is removed. Differential Revision: [D90126248](https://our.internmc.facebook.com/intern/diff/D90126248/)
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom): * #16451 * #16450 * __->__ #16449 * #16448 Add `aoti_torch_new_tensor_handle()` - Creates a new tensor handle that shares storage with the original tensor. Uses SlimTensor's copy constructor which shares the SharedPtr<Storage>, so both tensors reference the same memory. Differential Revision: [D90126245](https://our.internmc.facebook.com/intern/diff/D90126245/)
Add SlimTensor-based `aoti_torch_copy_()` - Copies data from source tensor to destination tensor. Delegates to SlimTensor's `copy_()` which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA). Differential Revision: [D90126246](https://our.internmc.facebook.com/intern/diff/D90126246/) [ghstack-poisoned]
Stack from ghstack (oldest at bottom):
Add SlimTensor-based
aoti_torch_copy_()- Copies data from source tensor to destination tensor. Delegates to SlimTensor'scopy_()which handles all device combinations (CPU-CPU, CPU-CUDA, CUDA-CPU, CUDA-CUDA).Differential Revision: D90126246