The ROme OpTimistic Simulator  3.0.0
A General-Purpose Multithreaded Parallel/Distributed Simulation Platform
process.c File Reference

LP state management functions. More...

#include <lp/process.h>
#include <datatypes/msg_queue.h>
#include <distributed/mpi.h>
#include <gvt/gvt.h>
#include <log/stats.h>
#include <lp/lp.h>
#include <mm/msg_allocator.h>
#include <serial/serial.h>
+ Include dependency graph for process.c:

Go to the source code of this file.

Functions

void ScheduleNewEvent_pr (lp_id_t receiver, simtime_t timestamp, unsigned event_type, const void *payload, unsigned payload_size)
 
void process_global_init (void)
 
void process_global_fini (void)
 
void process_lp_init (void)
 Initializes the processing module in the current LP.
 
void process_lp_deinit (void)
 Deinitializes the LP by calling the model's DEINIT handler.
 
void process_lp_fini (void)
 Finalizes the processing module in the current LP.
 
static void silent_execution (struct process_data *proc_p, array_count_t last_i, array_count_t past_i)
 
static void send_anti_messages (struct process_data *proc_p, array_count_t past_i)
 
static void reinsert_invalid_past_messages (struct process_data *proc_p, array_count_t past_i)
 
static void handle_rollback (struct process_data *proc_p, array_count_t past_i)
 
static array_count_t match_anti_msg (const struct process_data *proc_p, const struct lp_msg *a_msg)
 
static array_count_t match_straggler_msg (const struct process_data *proc_p, const struct lp_msg *s_msg)
 
void process_msg (void)
 

Variables

static _Thread_local bool silent_processing = false
 

Detailed Description

LP state management functions.

LP state management functions

Definition in file process.c.