Derecho  0.9
Distributed systems toolkit for RDMA
Classes | Namespaces | Functions | Variables
verbs.hpp File Reference
#include <map>
#include <infiniband/verbs.h>
Include dependency graph for verbs.hpp:

Go to the source code of this file.

Classes

struct  sst::cm_con_data_t
 Structure to exchange the data needed to connect the Queue Pairs. More...
 
struct  sst::verbs_sender_ctxt
 
class  sst::_resources
 Represents the set of RDMA resources needed to maintain a two-way connection to a single remote node. More...
 
class  sst::resources
 A public-facing version of the internal _resources class that extends it with more convenient functions. More...
 
class  sst::resources_two_sided
 A public-facing version of the internal _resources class that extends it with functions that support two-sided sends and receives. More...
 

Namespaces

 sst
 

Functions

struct sst::cm_con_data_t sst::__attribute__ ((packed))
 
bool sst::add_node (uint32_t new_id, const std::string new_ip_addr)
 
bool sst::remove_node (uint32_t node_id)
 Removes a node from the SST TCP connections set. More...
 
bool sst::sync (uint32_t r_id)
 Blocks the current thread until both this node and a remote node reach this function, which exchanges some trivial data over a TCP connection. More...
 
void sst::verbs_initialize (const std::map< uint32_t, std::string > &ip_addrs, uint32_t node_rank)
 Initializes the global verbs resources. More...
 
std::pair< uint32_t, std::pair< int, int > > sst::verbs_poll_completion ()
 Polls for completion of a single posted remote write. More...
 
void sst::shutdown_polling_thread ()
 Shutdown the polling thread. More...
 
void sst::verbs_destroy ()
 Destroys the global verbs resources. More...
 

Variables

uint64_t addr
 Buffer address. More...
 
uint32_t rkey
 Remote key. More...
 
uint32_t qp_num
 Queue Pair number. More...
 
uint16_t lid
 LID of the InfiniBand port. More...
 
uint8_t gid [16]
 GID. More...
 
struct sst::verbs_sender_ctxt sst::__attribute__
 

Class Documentation

◆ sst::cm_con_data_t

struct sst::cm_con_data_t

Structure to exchange the data needed to connect the Queue Pairs.

passive endpoint info to be exchanged.

Definition at line 17 of file verbs.hpp.

Class Members
uint64_t addr Buffer address.
uint8_t gid[16] GID.
uint16_t lid LID of the InfiniBand port.
uint64_t mr_key
char pep_addr[MAX_LF_ADDR_SIZE]
uint32_t pep_addr_len
uint32_t qp_num Queue Pair number.
uint32_t rkey Remote key.
uint64_t vaddr

◆ sst::verbs_sender_ctxt

struct sst::verbs_sender_ctxt

Definition at line 30 of file verbs.hpp.

Class Members
uint32_t ce_idx
uint32_t remote_id

Variable Documentation

◆ addr

uint64_t addr

Buffer address.

Definition at line 288 of file verbs.hpp.

◆ gid

uint8_t gid[16]

GID.

Definition at line 296 of file verbs.hpp.

◆ lid

uint16_t lid

LID of the InfiniBand port.

Definition at line 294 of file verbs.hpp.

◆ qp_num

uint32_t qp_num

Queue Pair number.

Definition at line 292 of file verbs.hpp.

◆ rkey

uint32_t rkey

Remote key.

Definition at line 290 of file verbs.hpp.