4 ms·
It's not a true unified address space in the way I think you're getting at. We carve out the address space, but you can't just directly dereference a GPU pointe
by tmurray 16y ago
It's not a true unified address space in the way I think you're getting at. We carve out the address space, but you can't just directly dereference a GPU pointer from CPU code or vice-versa. What we guarantee is that you can determine the location of a pointer based only on the value of the pointer so you can make the appropriate API calls to do a copy if necessary.
- iskander 16y agoIf the programmer still has to perform manual copies, what's the advantage?
- tmurray 16y agoYou can take an arbitrary pointer value in a function, look up its location, and do the copy if necessary, instead of requiring multiple entry points for CPU and GPU pointers. This also simplifies multi-GPU programming a lot--copy from one arbitrary pointer to another and it just works, instead of having to specify which device the copies are going to or anything like that.