Connection code
Closed this issue · 2 comments
Hi,
I am trying to understand the code of "initRDMAConnection" but it seems complex. Could you tell the difference between RemoteConnection
, ThreadConnection
and DirectoryConnection
?
Also, what does MAX_APP_THREAD
and NR_DIRECTORY
mean?
Thanks.
RemoteConnection
contains the informantion for RDMA communication, such as Rkey and Ah.
ThreadConnection
are QP endpoints for client threads (who issues RDMA ops to memory pool).
DirectoryConnection
is the QP endpoint for memory pool, and we uses a thread in memory pool to manage memory allocation (https://github.com/thustorage/Sherman/blob/main/include/Directory.h).
MAX_APP_THREAD
is the max number of client threads; a client thread has a threadconnection, which is allocated in DSM::registerThread
.
NR_DIRECTORY
is the number of thread in memory, which always is 1.
Thanks!