Namespaces | |
| util | |
Classes | |
| class | _resources |
| Represents the set of RDMA resources needed to maintain a two-way connection to a single remote node. More... | |
| class | _SSTField |
| Internal helper class, never exposed to the client. More... | |
| struct | cm_con_data_t |
| Structure to exchange the data needed to connect the Queue Pairs. More... | |
| struct | global_resources |
| Structure containing global system resources. More... | |
| class | lf_ctxt |
| Global States. More... | |
| struct | lf_sender_ctxt |
| class | multicast_group |
| class | multicast_sst |
| class | P2PConnections |
| struct | P2PParams |
| class | Predicates |
| class | resources |
| A public-facing version of the internal _resources class that extends it with more convenient functions. More... | |
| class | 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... | |
| class | SST |
| class | SSTField |
| Clients should use instances of this class with the appropriate template parameter to declare fields in their SST; for example, SSTField<int> is the type of an integer-valued SST field. More... | |
| class | SSTFieldVector |
| Clients should use instances of this class to declare vector-like fields in their SST; the template parameter is the type of the vector's elements, just like with std::vector. More... | |
| struct | SSTParams |
| Constructor parameter pack for SST. More... | |
| struct | verbs_sender_ctxt |
Typedefs | |
| typedef std::function< void(uint32_t)> | failure_upcall_t |
Enumerations | |
| enum | REQUEST_TYPE { P2P_REPLY = 0, P2P_REQUEST, RPC_REPLY } |
| enum | PredicateType { PredicateType::ONE_TIME, PredicateType::RECURRENT, PredicateType::TRANSITION } |
| Enumeration defining the kinds of predicates an SST can handle. More... | |
| enum | NextOnFailure { REPORT_ON_FAILURE = 0, CRASH_ON_FAILURE = 1 } |
Functions | |
| bool | add_node (uint32_t new_id, const std::pair< ip_addr_t, uint16_t > &new_ip_addr_and_port) |
| Adds a new node to the SST TPC connections set. More... | |
| bool | remove_node (uint32_t node_id) |
| Removes a node from the SST TCP connections set. More... | |
| bool | 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 | lf_initialize (const std::map< uint32_t, std::pair< ip_addr_t, uint16_t >> &ip_addrs_and_ports, uint32_t node_rank) |
| Initializes the global libfabric resources. More... | |
| std::pair< uint32_t, std::pair< int32_t, int32_t > > | lf_poll_completion () |
| Polls for completion of a single posted remote write. More... | |
| void | shutdown_polling_thread () |
| Shutdown the polling thread. More... | |
| void | lf_destroy () |
| Destroys the global libfabric resources. More... | |
| struct sst::cm_con_data_t | __attribute__ ((packed)) |
| bool | add_node (uint32_t new_id, const std::string new_ip_addr) |
| void | 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 > > | verbs_poll_completion () |
| Polls for completion of a single posted remote write. More... | |
| void | verbs_destroy () |
| Destroys the global verbs resources. More... | |
| constexpr size_t | padded_len (const size_t &len) |
| void | polling_loop () |
| void | resources_init () |
| Allocates memory for global RDMA resources. More... | |
| void | resources_create () |
| Creates global RDMA resources. More... | |
| void | verbs_initialize (const std::map< uint32_t, std::pair< ip_addr_t, uint16_t >> &ip_addrs_and_ports, uint32_t node_rank) |
Variables | |
| struct sst::verbs_sender_ctxt | __attribute__ |
| const int | alignTo = sizeof(long) |
| std::thread | polling_thread |
| tcp::tcp_connections * | sst_connections |
| lf_ctxt | g_ctxt |
| const char * | dev_name = NULL |
| IB device name. More... | |
| int | ib_port = 1 |
| Local IB port to work with. More... | |
| int | gid_idx = 0 |
| GID index to use. More... | |
| struct global_resources * | g_res |
| The single instance of global_resources for the SST system. More... | |
| struct sst::cm_con_data_t |
Structure to exchange the data needed to connect the Queue Pairs.
passive endpoint info to be exchanged.
| 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 | |
| struct sst::global_resources |
| struct sst::lf_sender_ctxt |
| struct sst::P2PParams |
Definition at line 18 of file p2p_connections.hpp.

| Class Members | ||
|---|---|---|
| uint64_t | max_p2p_reply_size | |
| uint64_t | max_p2p_request_size | |
| uint64_t | max_rpc_reply_size | |
| vector< uint32_t > | members | |
| uint32_t | my_node_id | |
| uint32_t | p2p_window_size | |
| uint32_t | rpc_window_size | |
| struct sst::verbs_sender_ctxt |
| typedef std::function<void(uint32_t)> sst::failure_upcall_t |
| enum sst::NextOnFailure |
|
strong |
Enumeration defining the kinds of predicates an SST can handle.
| Enumerator | |
|---|---|
| ONE_TIME | One-time predicates only fire once; they are deleted once they become true. |
| RECURRENT | Recurrent predicates persist as long as the SST instance and fire their triggers every time they are true. |
| TRANSITION | Transition predicates persist as long as the SST instance, but only fire their triggers when they transition from false to true. |
Definition at line 16 of file predicates.hpp.
| enum sst::REQUEST_TYPE |
| Enumerator | |
|---|---|
| P2P_REPLY | |
| P2P_REQUEST | |
| RPC_REPLY | |
Definition at line 28 of file p2p_connections.hpp.
| 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::add_node | ( | uint32_t | new_id, |
| const std::pair< ip_addr_t, uint16_t > & | new_ip_addr_and_port | ||
| ) |
| void sst::lf_destroy | ( | ) |
| void sst::lf_initialize | ( | const std::map< uint32_t, std::pair< ip_addr_t, uint16_t >> & | ip_addrs_and_ports, |
| uint32_t | node_rank | ||
| ) |
| std::pair< uint32_t, std::pair< int32_t, int32_t > > sst::lf_poll_completion | ( | ) |
Polls for completion of a single posted remote write.
This blocks until a single entry in the completion queue has completed It is exclusively used by the polling thread the thread can sleep while in this function, when it calls util::polling_data.wait_for_requests
| bool sst::remove_node | ( | uint32_t | node_id | ) |
| void sst::resources_create | ( | ) |
| void sst::resources_init | ( | ) |
| void sst::shutdown_polling_thread | ( | ) |
| bool sst::sync | ( | uint32_t | r_index | ) |
| void sst::verbs_destroy | ( | ) |
| void sst::verbs_initialize | ( | const std::map< uint32_t, std::string > & | ip_addrs, |
| uint32_t | node_rank | ||
| ) |
Initializes the global verbs resources.
| void sst::verbs_initialize | ( | const std::map< uint32_t, std::pair< ip_addr_t, uint16_t >> & | ip_addrs_and_ports, |
| uint32_t | node_rank | ||
| ) |
| std::pair< uint32_t, std::pair< int, int > > sst::verbs_poll_completion | ( | ) |
Polls for completion of a single posted remote write.
This blocks until a single entry in the completion queue has completed It is exclusively used by the polling thread the thread can sleep while in this function, when it calls util::polling_data.wait_for_requests
| class sst::lf_ctxt sst::__attribute__ |
| struct global_resources* sst::g_res |
The single instance of global_resources for the SST system.
| tcp::tcp_connections * sst::sst_connections |
1.8.13