1. Architecture#
The application owns the control path between the client and server. The server
receives the operation type, request size, remote buffer start address, and
opaque RDMA descriptor over that control path. cuObjServer then uses a
registered local host buffer and an allocated channel to complete the requested
GET or PUT operation.
Typical flow:
Create a
cuObjServerobject with the server address, port, and protocol.Verify readiness with
isConnected().Allocate a channel with
allocateChannelId().Allocate host memory or provide application-owned host memory.
Register the host memory with
registerBuffer().For each request, call
handleGetObject()orhandlePutObject().For asynchronous submissions, call
poll()on the same channel.Complete cleanup with
deRegisterBuffer(),free(), andfreeChannelId().