-
Notifications
You must be signed in to change notification settings - Fork 57
Refactor OVRTAllocator to return base pointer of remote tensor #613
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
|
Which APIs are we trying to import the allocator too. Can you give some more context on the use case. |
|
This is a a windows use case. Specifically "importing" allocation to DX12 to share with the GPU by creating a system memory DX12 heap from the GPU using the CPU VA returned from the allocator. D3D runtime seems to require that the CPU VA point to the base address of the allocation to create the heap. Given that the allocator's lifetime is required to extend beyond it's allocations, the allocator is free to save internal state so this implementation shouldn't be a problem. In fact it'll likely save a small amount memory on a whole (since it doesn't save an extra page for each allocation for alignment + metadata). |
sfatimar
left a comment
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.
Approved
|
Please update branch |
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
af27ecf to
f5543b2
Compare
|
@sfatimar Can you please get this change upstreamed to msft main ? This is required for Auto SR enabling. |
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be imported to other APIs that require base addresses to the original device allocation.
This change allows for allocations made by the ov allocator to be
imported to other APIs that require base addresses to the original
device allocation.