-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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
[NestedTensor] chunk fails under DEBUG=1 builds #125503
Comments
It seems like this assertion is checking that if an op claims to have some aliasing relationship between input and output, the aliasing relationship actually exists - which it doesn't here, because we just created new nested tensors. |
Thanks for filing this! Another gap coming from the fact we don't run CI tests with DEBUG=1. |
This could be fixed by adding derivative for nested tensor chunk, or patching the autograd not implemented kernel to not do this check for subclasses, or using return_and_correct_aliasing on nested tensor. pytorch/torch/utils/_python_dispatch.py Lines 506 to 519 in 7bf6ed0
|
In theory, as NJT is a traceable wrapper subclass, we're supposed to be using |
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch._C._set_storage()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…+ compatible storage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
…grad_not_implemented_fallback" Fixes #125503 [ghstack-poisoned]
…rage setting" Fixes #125503 Context: `return_and_correct_aliasing()` is required for traceable wrapper subclasses so that aliasing relationships are correct. NJT has not been using this, but needs to for correct aliasing relationships, and to avoid tripping asserts when DEBUG=1 (e.g. #125503). This PR: * Uses `return_and_correct_aliasing()` in NJT * Changes how storage setting is done in `return_and_correct_aliasing()` * Old way: use `set_.source_Storage_storage_offset()`, which has extra logic for storage resizing that we don't need * New way: `torch.ops.aten._unsafe_set_storage_()` that shoves in a storage without this extra logic. Notably, this avoids `computeStorageNbytes()` choking on nested ints in NJT's sizes / strides [ghstack-poisoned]
🐛 Describe the bug
test_chunk is failing when run with DEBUG=1 (including in internal tests).
This isn't blocking anything for me, but I wanted to document it
CPP stacktrace:
Versions
Main branch as of may 3.
cc @cpuhrsch @jbschlosser @bhosmer @drisspg @soulitzer
The text was updated successfully, but these errors were encountered: