Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
gasnetmsg.h File Reference
#include <assert.h>
#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <vector>
#include <string>
#include <sys/types.h>
#include "realm/realm_config.h"
#include "realm/mutex.h"
#include "realm/activemsg.h"
#include "realm/bgwork.h"
#include "realm/atomics.h"
#include <stdint.h>
Include dependency graph for gasnetmsg.h:

Go to the source code of this file.

Classes

struct  BaseMedium
 
struct  BaseReply
 
class  PayloadSource
 
class  ContiguousPayload
 
class  TwoDPayload
 
class  SpanPayload
 
class  ActiveMsgProfilingHelper< MSGID >
 
union  AtLeastEightBytes< T >
 
class  QuiescenceChecker
 
struct  PendingCompletion
 
struct  PendingCompletionGroup
 
class  PendingCompletionManager
 

Namespaces

namespace  Realm
 

Macros

#define HANDLERARG_DECL_1   handlerarg_t arg0
 
#define HANDLERARG_DECL_2
 
#define HANDLERARG_DECL_3
 
#define HANDLERARG_DECL_4
 
#define HANDLERARG_DECL_5
 
#define HANDLERARG_DECL_6
 
#define HANDLERARG_DECL_7
 
#define HANDLERARG_DECL_8
 
#define HANDLERARG_DECL_9
 
#define HANDLERARG_DECL_10
 
#define HANDLERARG_DECL_11
 
#define HANDLERARG_DECL_12
 
#define HANDLERARG_DECL_13
 
#define HANDLERARG_DECL_14
 
#define HANDLERARG_DECL_15
 
#define HANDLERARG_DECL_16
 
#define HANDLERARG_VALS_1   arg0
 
#define HANDLERARG_VALS_2   HANDLERARG_VALS_1, arg1
 
#define HANDLERARG_VALS_3   HANDLERARG_VALS_2, arg2
 
#define HANDLERARG_VALS_4   HANDLERARG_VALS_3, arg3
 
#define HANDLERARG_VALS_5   HANDLERARG_VALS_4, arg4
 
#define HANDLERARG_VALS_6   HANDLERARG_VALS_5, arg5
 
#define HANDLERARG_VALS_7   HANDLERARG_VALS_6, arg6
 
#define HANDLERARG_VALS_8   HANDLERARG_VALS_7, arg7
 
#define HANDLERARG_VALS_9   HANDLERARG_VALS_8, arg8
 
#define HANDLERARG_VALS_10   HANDLERARG_VALS_9, arg9
 
#define HANDLERARG_VALS_11   HANDLERARG_VALS_10, arg10
 
#define HANDLERARG_VALS_12   HANDLERARG_VALS_11, arg11
 
#define HANDLERARG_VALS_13   HANDLERARG_VALS_12, arg12
 
#define HANDLERARG_VALS_14   HANDLERARG_VALS_13, arg13
 
#define HANDLERARG_VALS_15   HANDLERARG_VALS_14, arg14
 
#define HANDLERARG_VALS_16   HANDLERARG_VALS_15, arg15
 
#define HANDLERARG_PARAMS_1   handlerarg_t arg0
 
#define HANDLERARG_PARAMS_2   HANDLERARG_PARAMS_1, handlerarg_t arg1
 
#define HANDLERARG_PARAMS_3   HANDLERARG_PARAMS_2, handlerarg_t arg2
 
#define HANDLERARG_PARAMS_4   HANDLERARG_PARAMS_3, handlerarg_t arg3
 
#define HANDLERARG_PARAMS_5   HANDLERARG_PARAMS_4, handlerarg_t arg4
 
#define HANDLERARG_PARAMS_6   HANDLERARG_PARAMS_5, handlerarg_t arg5
 
#define HANDLERARG_PARAMS_7   HANDLERARG_PARAMS_6, handlerarg_t arg6
 
#define HANDLERARG_PARAMS_8   HANDLERARG_PARAMS_7, handlerarg_t arg7
 
#define HANDLERARG_PARAMS_9   HANDLERARG_PARAMS_8, handlerarg_t arg8
 
#define HANDLERARG_PARAMS_10   HANDLERARG_PARAMS_9, handlerarg_t arg9
 
#define HANDLERARG_PARAMS_11   HANDLERARG_PARAMS_10, handlerarg_t arg10
 
#define HANDLERARG_PARAMS_12   HANDLERARG_PARAMS_11, handlerarg_t arg11
 
#define HANDLERARG_PARAMS_13   HANDLERARG_PARAMS_12, handlerarg_t arg12
 
#define HANDLERARG_PARAMS_14   HANDLERARG_PARAMS_13, handlerarg_t arg13
 
#define HANDLERARG_PARAMS_15   HANDLERARG_PARAMS_14, handlerarg_t arg14
 
#define HANDLERARG_PARAMS_16   HANDLERARG_PARAMS_15, handlerarg_t arg15
 
#define HANDLERARG_COPY_1(u)   (u).raw.arg0 = arg0
 
#define HANDLERARG_COPY_2(u)
 
#define HANDLERARG_COPY_3(u)
 
#define HANDLERARG_COPY_4(u)
 
#define HANDLERARG_COPY_5(u)
 
#define HANDLERARG_COPY_6(u)
 
#define HANDLERARG_COPY_7(u)
 
#define HANDLERARG_COPY_8(u)
 
#define HANDLERARG_COPY_9(u)
 
#define HANDLERARG_COPY_10(u)
 
#define HANDLERARG_COPY_11(u)
 
#define HANDLERARG_COPY_12(u)
 
#define HANDLERARG_COPY_13(u)
 
#define HANDLERARG_COPY_14(u)
 
#define HANDLERARG_COPY_15(u)
 
#define HANDLERARG_COPY_16(u)
 
#define MACROPROXY(a, ...)   a(__VA_ARGS__)
 

Typedefs

typedef int32_t handlerarg_t
 
typedef void * token_t
 
typedef std::pair< const void *, size_t > SpanListEntry
 
typedef std::vector< SpanListEntrySpanList
 

Enumerations

enum  ActiveMessageIDs {
  FIRST_AVAILABLE = 140 , NODE_ANNOUNCE_MSGID , SPAWN_TASK_MSGID , LOCK_REQUEST_MSGID ,
  LOCK_RELEASE_MSGID , LOCK_GRANT_MSGID , EVENT_SUBSCRIBE_MSGID , EVENT_TRIGGER_MSGID ,
  EVENT_UPDATE_MSGID , REMOTE_MALLOC_MSGID , REMOTE_MALLOC_RPLID , CREATE_ALLOC_MSGID ,
  CREATE_ALLOC_RPLID , CREATE_INST_MSGID , CREATE_INST_RPLID , VALID_MASK_REQ_MSGID ,
  VALID_MASK_DATA_MSGID , VALID_MASK_FTH_MSGID , ROLL_UP_TIMER_MSGID , ROLL_UP_DATA_MSGID ,
  CLEAR_TIMER_MSGID , DESTROY_INST_MSGID , REMOTE_WRITE_MSGID , REMOTE_REDUCE_MSGID ,
  REMOTE_SERDEZ_MSGID , REMOTE_WRITE_FENCE_MSGID , REMOTE_WRITE_FENCE_ACK_MSGID , DESTROY_LOCK_MSGID ,
  REMOTE_REDLIST_MSGID , MACHINE_SHUTDOWN_MSGID , BARRIER_ADJUST_MSGID , BARRIER_SUBSCRIBE_MSGID ,
  BARRIER_TRIGGER_MSGID , BARRIER_MIGRATE_MSGID , METADATA_REQUEST_MSGID , METADATA_RESPONSE_MSGID ,
  METADATA_INVALIDATE_MSGID , METADATA_INVALIDATE_ACK_MSGID , XFERDES_REMOTEWRITE_MSGID , XFERDES_REMOTEWRITE_ACK_MSGID ,
  XFERDES_CREATE_MSGID , XFERDES_DESTROY_MSGID , XFERDES_NOTIFY_COMPLETION_MSGID , XFERDES_UPDATE_BYTES_WRITE_MSGID ,
  XFERDES_UPDATE_BYTES_READ_MSGID , REGISTER_TASK_MSGID , REGISTER_TASK_COMPLETE_MSGID , REMOTE_MICROOP_MSGID ,
  REMOTE_MICROOP_COMPLETE_MSGID , REMOTE_SPARSITY_CONTRIB_MSGID , REMOTE_SPARSITY_REQUEST_MSGID , APPROX_IMAGE_RESPONSE_MSGID ,
  SET_CONTRIB_COUNT_MSGID , REMOTE_ID_REQUEST_MSGID , REMOTE_ID_RESPONSE_MSGID , REMOTE_IB_ALLOC_REQUEST_MSGID ,
  REMOTE_IB_ALLOC_RESPONSE_MSGID , REMOTE_IB_FREE_REQUEST_MSGID , REMOTE_COPY_MSGID , REMOTE_FILL_MSGID ,
  MEM_STORAGE_ALLOC_REQ_MSGID , MEM_STORAGE_ALLOC_RESP_MSGID , MEM_STORAGE_RELEASE_REQ_MSGID , MEM_STORAGE_RELEASE_RESP_MSGID ,
  CANCEL_OPERATION_MSGID
}
 
enum  { MSGID_NEW_ACTIVEMSG = 251 }
 

Functions

void gasnet_parse_command_line (std::vector< std::string > &cmdline)
 
void init_endpoints (size_t gasnet_mem_size, size_t registered_mem_size, size_t registered_ib_mem_size, Realm::CoreReservationSet &crs, int num_polling_threads, Realm::BackgroundWorkManager &bgwork, bool poll_use_bgwork, Realm::IncomingMessageManager *message_manager)
 
void start_polling_threads (void)
 
void start_handler_threads (size_t stacksize)
 
void flush_activemsg_channels (void)
 
void stop_activemsg_threads (void)
 
void report_activemsg_status (FILE *f)
 
size_t get_lmb_size (Realm::NodeID target_node)
 
void release_srcptr (void *ptr)
 
void enqueue_message (Realm::NodeID target, int msgid, const void *args, size_t arg_size, const void *payload, size_t payload_size, int payload_mode, PendingCompletion *comp, void *dstptr=0)
 
void enqueue_message (Realm::NodeID target, int msgid, const void *args, size_t arg_size, const void *payload, size_t line_size, off_t line_stride, size_t line_count, int payload_mode, PendingCompletion *comp, void *dstptr=0)
 
void enqueue_message (Realm::NodeID target, int msgid, const void *args, size_t arg_size, const SpanList &spans, size_t payload_size, int payload_mode, PendingCompletion *comp, void *dstptr=0)
 
void handle_long_msgptr (Realm::NodeID source, int msgptr_index)
 
bool adjust_long_msgsize (Realm::NodeID source, void *&ptr, size_t &buffer_size, int frag_info)
 
void record_message (Realm::NodeID source, bool sent_reply)
 
template<class MSGTYPE >
void dummy_short_handler (MSGTYPE dummy)
 
template<class MSGTYPE >
void dummy_medium_handler (MSGTYPE dummy, const void *data, size_t datalen)
 
Realm::NodeID get_message_source (token_t token)
 
void send_srcptr_release (token_t token, uint64_t srcptr)
 

Variables

QuiescenceChecker quiescence_checker
 
PendingCompletionManager completion_manager
 

Macro Definition Documentation

◆ HANDLERARG_COPY_1

#define HANDLERARG_COPY_1 (   u)    (u).raw.arg0 = arg0

◆ HANDLERARG_COPY_10

#define HANDLERARG_COPY_10 (   u)
Value:
(u).raw.arg9 = arg9
#define HANDLERARG_COPY_9(u)
Definition gasnetmsg.h:441

◆ HANDLERARG_COPY_11

#define HANDLERARG_COPY_11 (   u)
Value:
(u).raw.arg10 = arg10
#define HANDLERARG_COPY_10(u)
Definition gasnetmsg.h:444

◆ HANDLERARG_COPY_12

#define HANDLERARG_COPY_12 (   u)
Value:
(u).raw.arg11 = arg11
#define HANDLERARG_COPY_11(u)
Definition gasnetmsg.h:447

◆ HANDLERARG_COPY_13

#define HANDLERARG_COPY_13 (   u)
Value:
(u).raw.arg12 = arg12
#define HANDLERARG_COPY_12(u)
Definition gasnetmsg.h:450

◆ HANDLERARG_COPY_14

#define HANDLERARG_COPY_14 (   u)
Value:
(u).raw.arg13 = arg13
#define HANDLERARG_COPY_13(u)
Definition gasnetmsg.h:453

◆ HANDLERARG_COPY_15

#define HANDLERARG_COPY_15 (   u)
Value:
(u).raw.arg14 = arg14
#define HANDLERARG_COPY_14(u)
Definition gasnetmsg.h:456

◆ HANDLERARG_COPY_16

#define HANDLERARG_COPY_16 (   u)
Value:
(u).raw.arg15 = arg15
#define HANDLERARG_COPY_15(u)
Definition gasnetmsg.h:459

◆ HANDLERARG_COPY_2

#define HANDLERARG_COPY_2 (   u)
Value:
(u).raw.arg1 = arg1
#define HANDLERARG_COPY_1(u)
Definition gasnetmsg.h:419

◆ HANDLERARG_COPY_3

#define HANDLERARG_COPY_3 (   u)
Value:
(u).raw.arg2 = arg2
#define HANDLERARG_COPY_2(u)
Definition gasnetmsg.h:420

◆ HANDLERARG_COPY_4

#define HANDLERARG_COPY_4 (   u)
Value:
(u).raw.arg3 = arg3
#define HANDLERARG_COPY_3(u)
Definition gasnetmsg.h:423

◆ HANDLERARG_COPY_5

#define HANDLERARG_COPY_5 (   u)
Value:
(u).raw.arg4 = arg4
#define HANDLERARG_COPY_4(u)
Definition gasnetmsg.h:426

◆ HANDLERARG_COPY_6

#define HANDLERARG_COPY_6 (   u)
Value:
(u).raw.arg5 = arg5
#define HANDLERARG_COPY_5(u)
Definition gasnetmsg.h:429

◆ HANDLERARG_COPY_7

#define HANDLERARG_COPY_7 (   u)
Value:
(u).raw.arg6 = arg6
#define HANDLERARG_COPY_6(u)
Definition gasnetmsg.h:432

◆ HANDLERARG_COPY_8

#define HANDLERARG_COPY_8 (   u)
Value:
(u).raw.arg7 = arg7
#define HANDLERARG_COPY_7(u)
Definition gasnetmsg.h:435

◆ HANDLERARG_COPY_9

#define HANDLERARG_COPY_9 (   u)
Value:
(u).raw.arg8 = arg8
#define HANDLERARG_COPY_8(u)
Definition gasnetmsg.h:438

◆ HANDLERARG_DECL_1

#define HANDLERARG_DECL_1   handlerarg_t arg0

◆ HANDLERARG_DECL_10

#define HANDLERARG_DECL_10
Value:
int32_t handlerarg_t
Definition gasnetmsg.h:117
#define HANDLERARG_DECL_9
Definition gasnetmsg.h:360

◆ HANDLERARG_DECL_11

#define HANDLERARG_DECL_11
Value:
#define HANDLERARG_DECL_10
Definition gasnetmsg.h:363

◆ HANDLERARG_DECL_12

#define HANDLERARG_DECL_12
Value:
#define HANDLERARG_DECL_11
Definition gasnetmsg.h:366

◆ HANDLERARG_DECL_13

#define HANDLERARG_DECL_13
Value:
#define HANDLERARG_DECL_12
Definition gasnetmsg.h:369

◆ HANDLERARG_DECL_14

#define HANDLERARG_DECL_14
Value:
#define HANDLERARG_DECL_13
Definition gasnetmsg.h:372

◆ HANDLERARG_DECL_15

#define HANDLERARG_DECL_15
Value:
#define HANDLERARG_DECL_14
Definition gasnetmsg.h:375

◆ HANDLERARG_DECL_16

#define HANDLERARG_DECL_16
Value:
#define HANDLERARG_DECL_15
Definition gasnetmsg.h:378

◆ HANDLERARG_DECL_2

#define HANDLERARG_DECL_2
Value:
#define HANDLERARG_DECL_1
Definition gasnetmsg.h:338

◆ HANDLERARG_DECL_3

#define HANDLERARG_DECL_3
Value:
#define HANDLERARG_DECL_2
Definition gasnetmsg.h:339

◆ HANDLERARG_DECL_4

#define HANDLERARG_DECL_4
Value:
#define HANDLERARG_DECL_3
Definition gasnetmsg.h:342

◆ HANDLERARG_DECL_5

#define HANDLERARG_DECL_5
Value:
#define HANDLERARG_DECL_4
Definition gasnetmsg.h:345

◆ HANDLERARG_DECL_6

#define HANDLERARG_DECL_6
Value:
#define HANDLERARG_DECL_5
Definition gasnetmsg.h:348

◆ HANDLERARG_DECL_7

#define HANDLERARG_DECL_7
Value:
#define HANDLERARG_DECL_6
Definition gasnetmsg.h:351

◆ HANDLERARG_DECL_8

#define HANDLERARG_DECL_8
Value:
#define HANDLERARG_DECL_7
Definition gasnetmsg.h:354

◆ HANDLERARG_DECL_9

#define HANDLERARG_DECL_9
Value:
#define HANDLERARG_DECL_8
Definition gasnetmsg.h:357

◆ HANDLERARG_PARAMS_1

#define HANDLERARG_PARAMS_1   handlerarg_t arg0

◆ HANDLERARG_PARAMS_10

#define HANDLERARG_PARAMS_10   HANDLERARG_PARAMS_9, handlerarg_t arg9

◆ HANDLERARG_PARAMS_11

#define HANDLERARG_PARAMS_11   HANDLERARG_PARAMS_10, handlerarg_t arg10

◆ HANDLERARG_PARAMS_12

#define HANDLERARG_PARAMS_12   HANDLERARG_PARAMS_11, handlerarg_t arg11

◆ HANDLERARG_PARAMS_13

#define HANDLERARG_PARAMS_13   HANDLERARG_PARAMS_12, handlerarg_t arg12

◆ HANDLERARG_PARAMS_14

#define HANDLERARG_PARAMS_14   HANDLERARG_PARAMS_13, handlerarg_t arg13

◆ HANDLERARG_PARAMS_15

#define HANDLERARG_PARAMS_15   HANDLERARG_PARAMS_14, handlerarg_t arg14

◆ HANDLERARG_PARAMS_16

#define HANDLERARG_PARAMS_16   HANDLERARG_PARAMS_15, handlerarg_t arg15

◆ HANDLERARG_PARAMS_2

#define HANDLERARG_PARAMS_2   HANDLERARG_PARAMS_1, handlerarg_t arg1

◆ HANDLERARG_PARAMS_3

#define HANDLERARG_PARAMS_3   HANDLERARG_PARAMS_2, handlerarg_t arg2

◆ HANDLERARG_PARAMS_4

#define HANDLERARG_PARAMS_4   HANDLERARG_PARAMS_3, handlerarg_t arg3

◆ HANDLERARG_PARAMS_5

#define HANDLERARG_PARAMS_5   HANDLERARG_PARAMS_4, handlerarg_t arg4

◆ HANDLERARG_PARAMS_6

#define HANDLERARG_PARAMS_6   HANDLERARG_PARAMS_5, handlerarg_t arg5

◆ HANDLERARG_PARAMS_7

#define HANDLERARG_PARAMS_7   HANDLERARG_PARAMS_6, handlerarg_t arg6

◆ HANDLERARG_PARAMS_8

#define HANDLERARG_PARAMS_8   HANDLERARG_PARAMS_7, handlerarg_t arg7

◆ HANDLERARG_PARAMS_9

#define HANDLERARG_PARAMS_9   HANDLERARG_PARAMS_8, handlerarg_t arg8

◆ HANDLERARG_VALS_1

#define HANDLERARG_VALS_1   arg0

◆ HANDLERARG_VALS_10

#define HANDLERARG_VALS_10   HANDLERARG_VALS_9, arg9

◆ HANDLERARG_VALS_11

#define HANDLERARG_VALS_11   HANDLERARG_VALS_10, arg10

◆ HANDLERARG_VALS_12

#define HANDLERARG_VALS_12   HANDLERARG_VALS_11, arg11

◆ HANDLERARG_VALS_13

#define HANDLERARG_VALS_13   HANDLERARG_VALS_12, arg12

◆ HANDLERARG_VALS_14

#define HANDLERARG_VALS_14   HANDLERARG_VALS_13, arg13

◆ HANDLERARG_VALS_15

#define HANDLERARG_VALS_15   HANDLERARG_VALS_14, arg14

◆ HANDLERARG_VALS_16

#define HANDLERARG_VALS_16   HANDLERARG_VALS_15, arg15

◆ HANDLERARG_VALS_2

#define HANDLERARG_VALS_2   HANDLERARG_VALS_1, arg1

◆ HANDLERARG_VALS_3

#define HANDLERARG_VALS_3   HANDLERARG_VALS_2, arg2

◆ HANDLERARG_VALS_4

#define HANDLERARG_VALS_4   HANDLERARG_VALS_3, arg3

◆ HANDLERARG_VALS_5

#define HANDLERARG_VALS_5   HANDLERARG_VALS_4, arg4

◆ HANDLERARG_VALS_6

#define HANDLERARG_VALS_6   HANDLERARG_VALS_5, arg5

◆ HANDLERARG_VALS_7

#define HANDLERARG_VALS_7   HANDLERARG_VALS_6, arg6

◆ HANDLERARG_VALS_8

#define HANDLERARG_VALS_8   HANDLERARG_VALS_7, arg7

◆ HANDLERARG_VALS_9

#define HANDLERARG_VALS_9   HANDLERARG_VALS_8, arg8

◆ MACROPROXY

#define MACROPROXY (   a,
  ... 
)    a(__VA_ARGS__)

Typedef Documentation

◆ handlerarg_t

typedef int32_t handlerarg_t

◆ SpanList

typedef std::vector<SpanListEntry> SpanList

◆ SpanListEntry

typedef std::pair<const void *, size_t> SpanListEntry

◆ token_t

typedef void* token_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MSGID_NEW_ACTIVEMSG 

◆ ActiveMessageIDs

Enumerator
FIRST_AVAILABLE 
NODE_ANNOUNCE_MSGID 
SPAWN_TASK_MSGID 
LOCK_REQUEST_MSGID 
LOCK_RELEASE_MSGID 
LOCK_GRANT_MSGID 
EVENT_SUBSCRIBE_MSGID 
EVENT_TRIGGER_MSGID 
EVENT_UPDATE_MSGID 
REMOTE_MALLOC_MSGID 
REMOTE_MALLOC_RPLID 
CREATE_ALLOC_MSGID 
CREATE_ALLOC_RPLID 
CREATE_INST_MSGID 
CREATE_INST_RPLID 
VALID_MASK_REQ_MSGID 
VALID_MASK_DATA_MSGID 
VALID_MASK_FTH_MSGID 
ROLL_UP_TIMER_MSGID 
ROLL_UP_DATA_MSGID 
CLEAR_TIMER_MSGID 
DESTROY_INST_MSGID 
REMOTE_WRITE_MSGID 
REMOTE_REDUCE_MSGID 
REMOTE_SERDEZ_MSGID 
REMOTE_WRITE_FENCE_MSGID 
REMOTE_WRITE_FENCE_ACK_MSGID 
DESTROY_LOCK_MSGID 
REMOTE_REDLIST_MSGID 
MACHINE_SHUTDOWN_MSGID 
BARRIER_ADJUST_MSGID 
BARRIER_SUBSCRIBE_MSGID 
BARRIER_TRIGGER_MSGID 
BARRIER_MIGRATE_MSGID 
METADATA_REQUEST_MSGID 
METADATA_RESPONSE_MSGID 
METADATA_INVALIDATE_MSGID 
METADATA_INVALIDATE_ACK_MSGID 
XFERDES_REMOTEWRITE_MSGID 
XFERDES_REMOTEWRITE_ACK_MSGID 
XFERDES_CREATE_MSGID 
XFERDES_DESTROY_MSGID 
XFERDES_NOTIFY_COMPLETION_MSGID 
XFERDES_UPDATE_BYTES_WRITE_MSGID 
XFERDES_UPDATE_BYTES_READ_MSGID 
REGISTER_TASK_MSGID 
REGISTER_TASK_COMPLETE_MSGID 
REMOTE_MICROOP_MSGID 
REMOTE_MICROOP_COMPLETE_MSGID 
REMOTE_SPARSITY_CONTRIB_MSGID 
REMOTE_SPARSITY_REQUEST_MSGID 
APPROX_IMAGE_RESPONSE_MSGID 
SET_CONTRIB_COUNT_MSGID 
REMOTE_ID_REQUEST_MSGID 
REMOTE_ID_RESPONSE_MSGID 
REMOTE_IB_ALLOC_REQUEST_MSGID 
REMOTE_IB_ALLOC_RESPONSE_MSGID 
REMOTE_IB_FREE_REQUEST_MSGID 
REMOTE_COPY_MSGID 
REMOTE_FILL_MSGID 
MEM_STORAGE_ALLOC_REQ_MSGID 
MEM_STORAGE_ALLOC_RESP_MSGID 
MEM_STORAGE_RELEASE_REQ_MSGID 
MEM_STORAGE_RELEASE_RESP_MSGID 
CANCEL_OPERATION_MSGID 

Function Documentation

◆ adjust_long_msgsize()

bool adjust_long_msgsize ( Realm::NodeID  source,
void *&  ptr,
size_t &  buffer_size,
int  frag_info 
)
extern

◆ dummy_medium_handler()

template<class MSGTYPE >
void dummy_medium_handler ( MSGTYPE  dummy,
const void *  data,
size_t  datalen 
)

◆ dummy_short_handler()

template<class MSGTYPE >
void dummy_short_handler ( MSGTYPE  dummy)

◆ enqueue_message() [1/3]

void enqueue_message ( Realm::NodeID  target,
int  msgid,
const void *  args,
size_t  arg_size,
const SpanList spans,
size_t  payload_size,
int  payload_mode,
PendingCompletion comp,
void *  dstptr = 0 
)
extern

◆ enqueue_message() [2/3]

void enqueue_message ( Realm::NodeID  target,
int  msgid,
const void *  args,
size_t  arg_size,
const void *  payload,
size_t  line_size,
off_t  line_stride,
size_t  line_count,
int  payload_mode,
PendingCompletion comp,
void *  dstptr = 0 
)
extern

◆ enqueue_message() [3/3]

void enqueue_message ( Realm::NodeID  target,
int  msgid,
const void *  args,
size_t  arg_size,
const void *  payload,
size_t  payload_size,
int  payload_mode,
PendingCompletion comp,
void *  dstptr = 0 
)
extern

◆ flush_activemsg_channels()

void flush_activemsg_channels ( void  )
extern

◆ gasnet_parse_command_line()

void gasnet_parse_command_line ( std::vector< std::string > &  cmdline)
extern

◆ get_lmb_size()

size_t get_lmb_size ( Realm::NodeID  target_node)
extern

◆ get_message_source()

Realm::NodeID get_message_source ( token_t  token)
extern

◆ handle_long_msgptr()

void handle_long_msgptr ( Realm::NodeID  source,
int  msgptr_index 
)
extern

◆ init_endpoints()

void init_endpoints ( size_t  gasnet_mem_size,
size_t  registered_mem_size,
size_t  registered_ib_mem_size,
Realm::CoreReservationSet crs,
int  num_polling_threads,
Realm::BackgroundWorkManager bgwork,
bool  poll_use_bgwork,
Realm::IncomingMessageManager message_manager 
)
extern

◆ record_message()

void record_message ( Realm::NodeID  source,
bool  sent_reply 
)
extern

◆ release_srcptr()

void release_srcptr ( void *  ptr)
extern

◆ report_activemsg_status()

void report_activemsg_status ( FILE *  f)
extern

◆ send_srcptr_release()

void send_srcptr_release ( token_t  token,
uint64_t  srcptr 
)
extern

◆ start_handler_threads()

void start_handler_threads ( size_t  stacksize)
extern

◆ start_polling_threads()

void start_polling_threads ( void  )
extern

◆ stop_activemsg_threads()

void stop_activemsg_threads ( void  )
extern

Variable Documentation

◆ completion_manager

PendingCompletionManager completion_manager
extern

◆ quiescence_checker

QuiescenceChecker quiescence_checker
extern