76 #define is_red_colour(c) ( (bool) (c & 0x1) )    79 #define in_red_phase() ( is_red_colour(threads_phase_colour[local_tid]) )    82 #define next_colour(c) ( ((c)+1) & 0x3 ) phase_colour * threads_phase_colour
 
void exit_red_phase(void)
Make a thread exit from red phase. 
 
void join_white_msg_redux(void)
Join the white message reduction collective operation. 
 
Core ROOT-Sim functionalities. 
 
void gvt_comm_finalize(void)
Shut down the MPI-based distributed GVT reduction submodule. 
 
void register_incoming_msg(const msg_t *)
Register an incoming message, if necessary. 
 
void gvt_comm_init(void)
Initialize the MPI-based distributed GVT reduction submodule. 
 
void join_gvt_redux(simtime_t local_vt)
Reduce the GVT value. 
 
void broadcast_gvt_init(unsigned int round)
Initiate a distributed GVT. 
 
void register_outgoing_msg(const msg_t *)
Register an outgoing message, if necessary. 
 
simtime_t last_reduced_gvt(void)
Return the last GVT value. 
 
bool all_white_msg_received(void)
Check if white messages are all received. 
 
double simtime_t
This defines the type with whom timestamps are represented. 
 
bool white_msg_redux_completed(void)
Test completion of white message reduction collective operation. 
 
simtime_t * min_outgoing_red_msg
Minimum time among all the outgoing red messages for each thread. 
 
void wait_white_msg_redux(void)
Wait for the completion of wait message reduction. 
 
bool gvt_init_pending(void)
Check if there are pending GVT-init messages around. 
 
void gvt_init_clear(void)
Forcely extract GVT-init message from MPI. 
 
void flush_white_msg_recv(void)
Reset received white messages. 
 
_msg_colours
Define colour values for messages and threads. 
 
void enter_red_phase(void)
Make a thread enter into red phase. 
 
void flush_white_msg_sent(void)
Reset sent white messages. 
 
bool gvt_redux_completed(void)
Check if final GVT reduction is complete.