20#ifndef GASNETEX_MODULE_H
21#define GASNETEX_MODULE_H
27 class GASNetEXInternal;
48 std::vector<std::string> &cmdline);
62 virtual void broadcast(
NodeID root,
const void *val_in,
void *val_out,
size_t bytes);
63 virtual void gather(
NodeID root,
const void *val_in,
void *vals_out,
size_t bytes);
64 virtual void allgatherv(
const char *val_in,
size_t bytes, std::vector<char> &vals_out,
65 std::vector<size_t> &lengths);
80 size_t max_payload_size,
const void *src_payload_addr,
81 size_t src_payload_lines,
size_t src_payload_line_stride,
82 void *storage_base,
size_t storage_size);
85 NodeID target,
unsigned short msgid,
size_t header_size,
size_t max_payload_size,
86 const LocalAddress &src_payload_addr,
size_t src_payload_lines,
87 size_t src_payload_line_stride,
const RemoteAddress &dest_payload_addr,
88 void *storage_base,
size_t storage_size);
91 NodeID target,
unsigned short msgid,
size_t header_size,
size_t max_payload_size,
92 const RemoteAddress &dest_payload_addr,
void *storage_base,
size_t storage_size);
95 const NodeSet &targets,
unsigned short msgid,
size_t header_size,
96 size_t max_payload_size,
const void *src_payload_addr,
size_t src_payload_lines,
97 size_t src_payload_line_stride,
void *storage_base,
size_t storage_size);
105 bool with_congestion,
size_t header_size);
107 size_t bytes_per_line,
size_t lines,
108 size_t line_stride,
bool with_congestion,
111 size_t bytes_per_line,
size_t lines,
112 size_t line_stride,
bool with_congestion,
116 size_t bytes_per_line,
size_t lines,
119 bool with_congestion,
size_t header_size);
129 bool cfg_bind_cudamem;
132 bool cfg_bind_hipmem;
Definition activemsg.h:205
Definition bytearray.h:53
Definition gasnetex_internal.h:642
Definition gasnetex_module.h:29
virtual void gather(NodeID root, const void *val_in, void *vals_out, size_t bytes)
virtual size_t recommended_max_payload(NodeID target, const void *data, size_t bytes_per_line, size_t lines, size_t line_stride, bool with_congestion, size_t header_size)
GASNetEXInternal * internal
Definition gasnetex_module.h:144
virtual size_t recommended_max_payload(NodeID target, bool with_congestion, size_t header_size)
virtual IBMemory * create_remote_ib_memory(RuntimeImpl *runtime, Memory m, size_t size, Memory::Kind kind, const ByteArray &rdma_info)
virtual void attach(RuntimeImpl *runtime, std::vector< NetworkSegment * > &segments)
virtual ~GASNetEXModule()
virtual void detach(RuntimeImpl *runtime, std::vector< NetworkSegment * > &segments)
virtual bool check_for_quiescence(size_t sampled_receive_count)
virtual size_t recommended_max_payload(const NodeSet &targets, bool with_congestion, size_t header_size)
size_t cfg_outbuf_count
Definition gasnetex_module.h:138
virtual ActiveMessageImpl * create_active_message_impl(NodeID target, unsigned short msgid, size_t header_size, size_t max_payload_size, const void *src_payload_addr, size_t src_payload_lines, size_t src_payload_line_stride, void *storage_base, size_t storage_size)
virtual void barrier(void)
bool cfg_do_checksums
Definition gasnetex_module.h:134
virtual size_t sample_messages_received_count(void)
bool cfg_use_rma_put
Definition gasnetex_module.h:140
static NetworkModule * create_network_module(RuntimeImpl *runtime, int *argc, const char ***argv)
virtual ActiveMessageImpl * create_active_message_impl(NodeID target, unsigned short msgid, size_t header_size, size_t max_payload_size, const RemoteAddress &dest_payload_addr, void *storage_base, size_t storage_size)
long long cfg_crit_timeout
Definition gasnetex_module.h:124
virtual void parse_command_line(RuntimeImpl *runtime, std::vector< std::string > &cmdline)
virtual void get_shared_peers(NodeSet &shared_peers)
virtual size_t recommended_max_payload(const NodeSet &targets, const void *data, size_t bytes_per_line, size_t lines, size_t line_stride, bool with_congestion, size_t header_size)
bool cfg_bind_hostmem
Definition gasnetex_module.h:127
size_t cfg_outbuf_size
Definition gasnetex_module.h:138
bool cfg_use_negotiated
Definition gasnetex_module.h:123
bool cfg_use_immediate
Definition gasnetex_module.h:122
virtual size_t recommended_max_payload(NodeID target, const RemoteAddress &dest_payload_addr, bool with_congestion, size_t header_size)
size_t cfg_max_medium
Definition gasnetex_module.h:125
bool cfg_batch_messages
Definition gasnetex_module.h:135
virtual ActiveMessageImpl * create_active_message_impl(const NodeSet &targets, unsigned short msgid, size_t header_size, size_t max_payload_size, const void *src_payload_addr, size_t src_payload_lines, size_t src_payload_line_stride, void *storage_base, size_t storage_size)
bool cfg_force_rma
Definition gasnetex_module.h:139
virtual void create_memories(RuntimeImpl *runtime)
int cfg_am_limit
Definition gasnetex_module.h:141
virtual ActiveMessageImpl * create_active_message_impl(NodeID target, unsigned short msgid, size_t header_size, size_t max_payload_size, const LocalAddress &src_payload_addr, size_t src_payload_lines, size_t src_payload_line_stride, const RemoteAddress &dest_payload_addr, void *storage_base, size_t storage_size)
virtual size_t recommended_max_payload(NodeID target, const LocalAddress &src_payload_addr, size_t bytes_per_line, size_t lines, size_t line_stride, const RemoteAddress &dest_payload_addr, bool with_congestion, size_t header_size)
virtual void broadcast(NodeID root, const void *val_in, void *val_out, size_t bytes)
virtual MemoryImpl * create_remote_memory(RuntimeImpl *runtime, Memory m, size_t size, Memory::Kind kind, const ByteArray &rdma_info)
size_t cfg_max_long
Definition gasnetex_module.h:126
virtual void allgatherv(const char *val_in, size_t bytes, std::vector< char > &vals_out, std::vector< size_t > &lengths)
Definition ib_memory.h:30
Kind
Definition memory.h:59
Definition runtime_impl.h:264
Definition activemsg.h:38
int NodeID
Definition nodeset.h:40
unsigned short msgid
Definition ucp_internal.h:2