> dest/src/ptr can be host or device. Dest and src are used to indicate 
> direction. Ptr is
> when there is no direction.

Is ptr a reference to a VA *within* an allocated region, or is there some other 
restriction?

> dev_buf is to indicate that the ptr must be a ptr to device memory (like when 
> you get
> an IPC handle - it cannot be host memory). In some APIs (ZE, CUDA) this must 
> be a base
> address. I am not sure if this is the same for all APIs which I believe is 
> why the
> naming is more generic.

The user of these ops must obey the most restrictive use case.  So, dev_buf 
must be the base address, and always references the entire allocation, correct? 
 That is, even if a size parameter isn't defined, the entire region is assumed.

> ipc_ptr is the returned ptr (to device memory) that has been opened by a peer 
> process
> for an IPC copy. It can be used like a regular ptr, but it is named ipc_ptr 
> to show
> that the process using it did not allocate it/does not own it

Similar with dev_buf, I think this must always reference the entire allocation.

> Addr is pretty much the same as ptr so that can be renamed to align.
> We could align the usage of buf/ptr to match for ptr/addr/dev_buf

I'm not just concerned about the name, but the requirements placed on what's 
being referenced.

As a comparison, struct ipc_info is nicely self-documenting.
_______________________________________________
ofiwg mailing list
[email protected]
https://lists.openfabrics.org/mailman/listinfo/ofiwg

Reply via email to