3 #ifndef ROSS_DO_NOT_PRINT
7 printf(
"\t%-50s %11lld\n", name, v);
14 printf(
"\t%-50s %11.2f %%\n", name, v);
21 printf(
"\t%-50s %11.1f\n", name, v);
28 printf(
"\t%-50s %11.4lf\n", name, v);
82 s->s_rio_load += pe->
stats.s_rio_load;
83 s->s_rio_lp_init += pe->
stats.s_rio_lp_init;
107 tw_stat model_net = model_nevent - model_e_rbs;
110 printf(
"\nSeparate Statistics for Model and Analysis LPs\n");
111 printf(
"Model LPs:\n");
112 show_lld(
"Total Events Processed", model_nevent);
113 show_lld(
"Events Rolled Back", model_e_rbs);
114 show_lld(
"Net Events Processed", model_net);
115 show_2f(
"Efficiency", 100.0 * (1.0 - ((
double) model_e_rbs / (
double) model_net)));
117 printf(
"\nAnalysis LPs:\n");
120 show_lld(
"Net Events Processed", analysis_net);
121 show_2f(
"Efficiency", 100.0 * (1.0 - ((
double) s->
s_alp_e_rbs / (
double) analysis_net)));
128 bzero(&s,
sizeof(s));
129 size_t m_alloc, m_waste;
145 #ifndef ROSS_DO_NOT_PRINT
149 printf(
"\nTW Library Statistics:\n");
155 printf(
"\t%-50s %11.9lf\n",
156 "Minimum TS Offset Detected in Conservative Mode",
162 "Percent Remote Events",
170 "Percent Remote Events",
186 "Event Rate (events/sec)",
192 printf(
"\nTW Memory Statistics:\n");
194 show_lld(
"Memory Allocated", m_alloc / 1024);
195 show_lld(
"Memory Wasted", m_waste / 1024);
199 printf(
"TW Network Statistics:\n");
204 printf(
"\nTW Data Structure sizes in bytes (sizeof):\n");
215 printf(
"\nTW Clock Cycle Statistics (MAX values in secs at %1.4lf GHz):\n",
g_tw_clock_rate / 1000000000.0);
tw_synch g_tw_synchronization_protocol
unsigned int g_tw_gvt_done
double g_tw_min_detected_offset
unsigned long long g_tw_clock_rate
final_f final
Final handler routine.
tw_lptype * type
Type of this LP, including service callbacks.
static void show_1f(const char *name, double v)
tw_statistics stats
per PE counters
unsigned int g_tw_sim_started
static int tw_ismaster(void)
long s_rb_secondary
Number of secondary rollbacks by this LP.
void st_print_analysis_LP_stats(tw_statistics *s)
Holds the entire PE state.
static void show_4f(const char *name, double v)
unsigned int tw_nnodes(void)
tw_stat s_nsend_remote_rb
unsigned int tw_pq_get_size(splay_tree *st)
static tw_kp * tw_getkp(tw_kpid id)
Statistics tallied over the duration of the simulation.
tw_stat s_nsend_net_remote
tw_lpid g_st_analysis_nlp
int g_st_use_analysis_lps
unsigned int g_tw_events_per_pe_extra
tw_wtime start_time
When this PE first started execution.
long s_e_rbs
Number of events rolled back by this LP.
tw_pq * pq
Priority queue used to sort events.
void tw_wall_sub(tw_wtime *r, tw_wtime *a, tw_wtime *b)
tw_statistics * tw_net_statistics(tw_pe *me, tw_statistics *s)
Function to output the statistics.
size_t state_sz
Number of bytes that SV is for the LP.
long s_rb_total
Number of total rollbacks by this LP.
double s_min_detected_offset
static tw_lp * tw_getlp(tw_lpid id)
tw_stat s_nsend_loc_remote
tw_clock s_fossil_collect
tw_wtime end_time
When this PE finished its execution.
unsigned long long tw_stat
static void show_lld(const char *name, tw_stat v)
void * cur_state
Current application LP data.
double tw_wall_to_double(tw_wtime *t)
tw_stat s_alp_nevent_processed
tw_stat s_nevent_processed
tw_rng_stream * rng
RNG stream array for this LP.
void tw_get_stats(tw_pe *pe, tw_statistics *s)
tw_stat s_events_past_end
static void show_2f(const char *name, double v)
void tw_gvt_stats(FILE *f)
tw_stat s_nevent_processed
Number of events processed.
unsigned int g_tw_events_per_pe
void tw_calloc_stats(size_t *alloc, size_t *waste)