SimGrid  3.16
Versatile Simulation of Distributed Systems
instr_private.h File Reference
#include <xbt/base.h>
#include "simgrid/instr.h"
#include "instr/instr_interface.h"
#include "src/internal_config.h"
#include "simgrid_config.h"
#include "xbt/graph.h"
#include "xbt/dict.h"

Classes

class  s_type
 
class  s_val
 
class  s_container
 
class  PajeEvent
 
class  DefineVariableTypeEvent
 
class  DefineStateTypeEvent
 
class  SetVariableEvent
 
class  AddVariableEvent
 
class  SubVariableEvent
 
class  SetStateEvent
 
class  PushStateEvent
 
class  PopStateEvent
 
class  ResetStateEvent
 
class  StartLinkEvent
 
class  EndLinkEvent
 
class  NewEvent
 
struct  s_instr_extra_data
 

Macros

#define INSTR_DEFAULT_STR_SIZE   500
 

Typedefs

typedef s_typetype_t
 
typedef s_type s_type_t
 
typedef s_valval_t
 
typedef s_val s_val_t
 
typedef s_containercontainer_t
 
typedef s_container s_container_t
 
typedef struct s_instr_extra_datainstr_extra_data
 
typedef struct s_instr_extra_data s_instr_extra_data_t
 

Enumerations

enum  e_event_type {
  PAJE_DefineContainerType, PAJE_DefineVariableType, PAJE_DefineStateType, PAJE_DefineEventType,
  PAJE_DefineLinkType, PAJE_DefineEntityValue, PAJE_CreateContainer, PAJE_DestroyContainer,
  PAJE_SetVariable, PAJE_AddVariable, PAJE_SubVariable, PAJE_SetState,
  PAJE_PushState, PAJE_PopState, PAJE_ResetState, PAJE_StartLink,
  PAJE_EndLink, PAJE_NewEvent
}
 
enum  e_entity_types {
  TYPE_VARIABLE, TYPE_LINK, TYPE_CONTAINER, TYPE_STATE,
  TYPE_EVENT
}
 
enum  e_container_types {
  INSTR_HOST, INSTR_LINK, INSTR_ROUTER, INSTR_AS,
  INSTR_SMPI, INSTR_MSG_VM, INSTR_MSG_PROCESS, INSTR_MSG_TASK
}
 
enum  e_caller_type {
  TRACING_INIT, TRACING_FINALIZE, TRACING_COMM_SIZE, TRACING_COMM_SPLIT,
  TRACING_COMM_DUP, TRACING_SEND, TRACING_ISEND, TRACING_SSEND,
  TRACING_ISSEND, TRACING_RECV, TRACING_IRECV, TRACING_SENDRECV,
  TRACING_TEST, TRACING_WAIT, TRACING_WAITALL, TRACING_WAITANY,
  TRACING_BARRIER, TRACING_BCAST, TRACING_REDUCE, TRACING_ALLREDUCE,
  TRACING_ALLTOALL, TRACING_ALLTOALLV, TRACING_GATHER, TRACING_GATHERV,
  TRACING_SCATTER, TRACING_SCATTERV, TRACING_ALLGATHER, TRACING_ALLGATHERV,
  TRACING_REDUCE_SCATTER, TRACING_COMPUTING, TRACING_SLEEPING, TRACING_SCAN,
  TRACING_EXSCAN
}
 
enum  instr_fmt_type_t { instr_fmt_paje, instr_fmt_TI }
 

Functions

void TRACE_header (int basic, int size)
 
void TRACE_paje_start ()
 
void TRACE_paje_end ()
 
void TRACE_paje_dump_buffer (int force)
 
bool TRACE_needs_platform ()
 
bool TRACE_is_enabled ()
 
bool TRACE_platform ()
 
bool TRACE_platform_topology ()
 
bool TRACE_is_configured ()
 
bool TRACE_categorized ()
 
bool TRACE_uncategorized ()
 
bool TRACE_msg_process_is_enabled ()
 
bool TRACE_msg_vm_is_enabled ()
 
bool TRACE_buffer ()
 
bool TRACE_disable_link ()
 
bool TRACE_disable_speed ()
 
bool TRACE_onelink_only ()
 
bool TRACE_disable_destroy ()
 
bool TRACE_basic ()
 
bool TRACE_display_sizes ()
 
char * TRACE_get_comment ()
 
char * TRACE_get_comment_file ()
 
int TRACE_precision ()
 
char * TRACE_get_filename ()
 
char * TRACE_get_viva_uncat_conf ()
 
char * TRACE_get_viva_cat_conf ()
 
void TRACE_generate_viva_uncat_conf ()
 
void TRACE_generate_viva_cat_conf ()
 
void instr_pause_tracing ()
 
void instr_resume_tracing ()
 
bool TRACE_smpi_is_enabled ()
 
bool TRACE_smpi_is_grouped ()
 
bool TRACE_smpi_is_computing ()
 
bool TRACE_smpi_is_sleeping ()
 
bool TRACE_smpi_view_internals ()
 
void TRACE_surf_host_set_utilization (const char *resource, const char *category, double value, double now, double delta)
 
void TRACE_surf_link_set_utilization (const char *resource, const char *category, double value, double now, double delta)
 
void TRACE_surf_resource_utilization_alloc ()
 
long long int instr_new_paje_id ()
 
void PJ_container_alloc ()
 
void PJ_container_release ()
 
container_t PJ_container_new (const char *name, e_container_types kind, container_t father)
 
container_t PJ_container_get (const char *name)
 
container_t PJ_container_get_or_null (const char *name)
 
container_t PJ_container_get_root ()
 
void PJ_container_set_root (container_t root)
 
void PJ_container_free (container_t container)
 
void PJ_container_free_all (void)
 
void PJ_container_remove_from_parent (container_t container)
 
void PJ_type_alloc ()
 
void PJ_type_release ()
 
type_t PJ_type_get_root ()
 
type_t PJ_type_container_new (const char *name, type_t father)
 
type_t PJ_type_event_new (const char *name, type_t father)
 
type_t PJ_type_link_new (const char *name, type_t father, type_t source, type_t dest)
 
type_t PJ_type_variable_new (const char *name, const char *color, type_t father)
 
type_t PJ_type_state_new (const char *name, type_t father)
 
type_t PJ_type_get (const char *name, const type_t father)
 
type_t PJ_type_get_or_null (const char *name, type_t father)
 
void PJ_type_free_all ()
 
void PJ_type_free (type_t type)
 
val_t PJ_value_new (const char *name, const char *color, type_t father)
 
val_t PJ_value_get_or_new (const char *name, const char *color, type_t father)
 
val_t PJ_value_get (const char *name, const type_t father)
 
void PJ_value_free (val_t value)
 
void TRACE_TI_start ()
 
void TRACE_TI_end ()
 
void print_NULL (PajeEvent *event)
 
void dump_comment_file (const char *filename)
 
void dump_comment (const char *comment)
 
void DefineContainerEvent (type_t type)
 
void LogVariableTypeDefinition (type_t type)
 
void LogStateTypeDefinition (type_t type)
 
void LogLinkTypeDefinition (type_t type, type_t source, type_t dest)
 
void LogEntityValue (val_t value)
 
void LogContainerCreation (container_t container)
 
void LogContainerDestruction (container_t container)
 
void LogDefineEventType (type_t type)
 

Variables

xbt_dict_t created_categories
 
xbt_dict_t declared_marks
 
xbt_dict_t user_host_variables
 
xbt_dict_t user_vm_variables
 
xbt_dict_t user_link_variables
 
double TRACE_last_timestamp_to_dump
 
xbt_dict_t trivaNodeTypes
 
xbt_dict_t trivaEdgeTypes
 
instr_fmt_type_t instr_fmt_type
 

Macro Definition Documentation

◆ INSTR_DEFAULT_STR_SIZE

#define INSTR_DEFAULT_STR_SIZE   500

Typedef Documentation

◆ type_t

typedef s_type* type_t

◆ s_type_t

typedef s_type s_type_t

◆ val_t

typedef s_val* val_t

◆ s_val_t

typedef s_val s_val_t

◆ container_t

◆ s_container_t

◆ instr_extra_data

◆ s_instr_extra_data_t

Enumeration Type Documentation

◆ e_event_type

Enumerator
PAJE_DefineContainerType 
PAJE_DefineVariableType 
PAJE_DefineStateType 
PAJE_DefineEventType 
PAJE_DefineLinkType 
PAJE_DefineEntityValue 
PAJE_CreateContainer 
PAJE_DestroyContainer 
PAJE_SetVariable 
PAJE_AddVariable 
PAJE_SubVariable 
PAJE_SetState 
PAJE_PushState 
PAJE_PopState 
PAJE_ResetState 
PAJE_StartLink 
PAJE_EndLink 
PAJE_NewEvent 

◆ e_entity_types

Enumerator
TYPE_VARIABLE 
TYPE_LINK 
TYPE_CONTAINER 
TYPE_STATE 
TYPE_EVENT 

◆ e_container_types

Enumerator
INSTR_HOST 
INSTR_LINK 
INSTR_ROUTER 
INSTR_AS 
INSTR_SMPI 
INSTR_MSG_VM 
INSTR_MSG_PROCESS 
INSTR_MSG_TASK 

◆ e_caller_type

Enumerator
TRACING_INIT 
TRACING_FINALIZE 
TRACING_COMM_SIZE 
TRACING_COMM_SPLIT 
TRACING_COMM_DUP 
TRACING_SEND 
TRACING_ISEND 
TRACING_SSEND 
TRACING_ISSEND 
TRACING_RECV 
TRACING_IRECV 
TRACING_SENDRECV 
TRACING_TEST 
TRACING_WAIT 
TRACING_WAITALL 
TRACING_WAITANY 
TRACING_BARRIER 
TRACING_BCAST 
TRACING_REDUCE 
TRACING_ALLREDUCE 
TRACING_ALLTOALL 
TRACING_ALLTOALLV 
TRACING_GATHER 
TRACING_GATHERV 
TRACING_SCATTER 
TRACING_SCATTERV 
TRACING_ALLGATHER 
TRACING_ALLGATHERV 
TRACING_REDUCE_SCATTER 
TRACING_COMPUTING 
TRACING_SLEEPING 
TRACING_SCAN 
TRACING_EXSCAN 

◆ instr_fmt_type_t

Enumerator
instr_fmt_paje 
instr_fmt_TI 

Function Documentation

◆ TRACE_header()

void TRACE_header ( int  basic,
int  size 
)

◆ TRACE_paje_start()

void TRACE_paje_start ( )

◆ TRACE_paje_end()

void TRACE_paje_end ( )

◆ TRACE_paje_dump_buffer()

void TRACE_paje_dump_buffer ( int  force)

◆ TRACE_needs_platform()

bool TRACE_needs_platform ( )

◆ TRACE_is_enabled()

bool TRACE_is_enabled ( )

◆ TRACE_platform()

bool TRACE_platform ( )

◆ TRACE_platform_topology()

bool TRACE_platform_topology ( )

◆ TRACE_is_configured()

bool TRACE_is_configured ( )

◆ TRACE_categorized()

bool TRACE_categorized ( )

◆ TRACE_uncategorized()

bool TRACE_uncategorized ( )

◆ TRACE_msg_process_is_enabled()

bool TRACE_msg_process_is_enabled ( )

◆ TRACE_msg_vm_is_enabled()

bool TRACE_msg_vm_is_enabled ( )

◆ TRACE_buffer()

bool TRACE_buffer ( )

◆ TRACE_disable_link()

bool TRACE_disable_link ( )

◆ TRACE_disable_speed()

bool TRACE_disable_speed ( )

◆ TRACE_onelink_only()

bool TRACE_onelink_only ( )

◆ TRACE_disable_destroy()

bool TRACE_disable_destroy ( )

◆ TRACE_basic()

bool TRACE_basic ( )

◆ TRACE_display_sizes()

bool TRACE_display_sizes ( )

◆ TRACE_get_comment()

char* TRACE_get_comment ( )

◆ TRACE_get_comment_file()

char* TRACE_get_comment_file ( )

◆ TRACE_precision()

int TRACE_precision ( )

◆ TRACE_get_filename()

char* TRACE_get_filename ( )

◆ TRACE_get_viva_uncat_conf()

char* TRACE_get_viva_uncat_conf ( )

◆ TRACE_get_viva_cat_conf()

char* TRACE_get_viva_cat_conf ( )

◆ TRACE_generate_viva_uncat_conf()

void TRACE_generate_viva_uncat_conf ( )

◆ TRACE_generate_viva_cat_conf()

void TRACE_generate_viva_cat_conf ( )

◆ instr_pause_tracing()

void instr_pause_tracing ( )

◆ instr_resume_tracing()

void instr_resume_tracing ( )

◆ TRACE_smpi_is_enabled()

bool TRACE_smpi_is_enabled ( )

◆ TRACE_smpi_is_grouped()

bool TRACE_smpi_is_grouped ( )

◆ TRACE_smpi_is_computing()

bool TRACE_smpi_is_computing ( )

◆ TRACE_smpi_is_sleeping()

bool TRACE_smpi_is_sleeping ( )

◆ TRACE_smpi_view_internals()

bool TRACE_smpi_view_internals ( )

◆ TRACE_surf_host_set_utilization()

void TRACE_surf_host_set_utilization ( const char *  resource,
const char *  category,
double  value,
double  now,
double  delta 
)

◆ TRACE_surf_link_set_utilization()

void TRACE_surf_link_set_utilization ( const char *  resource,
const char *  category,
double  value,
double  now,
double  delta 
)

◆ TRACE_surf_resource_utilization_alloc()

void TRACE_surf_resource_utilization_alloc ( )

◆ instr_new_paje_id()

long long int instr_new_paje_id ( )

◆ PJ_container_alloc()

void PJ_container_alloc ( )

◆ PJ_container_release()

void PJ_container_release ( )

◆ PJ_container_new()

container_t PJ_container_new ( const char *  name,
e_container_types  kind,
container_t  father 
)

◆ PJ_container_get()

container_t PJ_container_get ( const char *  name)

◆ PJ_container_get_or_null()

container_t PJ_container_get_or_null ( const char *  name)

◆ PJ_container_get_root()

container_t PJ_container_get_root ( )

◆ PJ_container_set_root()

void PJ_container_set_root ( container_t  root)

◆ PJ_container_free()

void PJ_container_free ( container_t  container)

◆ PJ_container_free_all()

void PJ_container_free_all ( void  )

◆ PJ_container_remove_from_parent()

void PJ_container_remove_from_parent ( container_t  container)

◆ PJ_type_alloc()

void PJ_type_alloc ( )

◆ PJ_type_release()

void PJ_type_release ( )

◆ PJ_type_get_root()

type_t PJ_type_get_root ( )

◆ PJ_type_container_new()

type_t PJ_type_container_new ( const char *  name,
type_t  father 
)

◆ PJ_type_event_new()

type_t PJ_type_event_new ( const char *  name,
type_t  father 
)

◆ PJ_type_link_new()

type_t PJ_type_link_new ( const char *  name,
type_t  father,
type_t  source,
type_t  dest 
)

◆ PJ_type_variable_new()

type_t PJ_type_variable_new ( const char *  name,
const char *  color,
type_t  father 
)

◆ PJ_type_state_new()

type_t PJ_type_state_new ( const char *  name,
type_t  father 
)

◆ PJ_type_get()

type_t PJ_type_get ( const char *  name,
const type_t  father 
)

◆ PJ_type_get_or_null()

type_t PJ_type_get_or_null ( const char *  name,
type_t  father 
)

◆ PJ_type_free_all()

void PJ_type_free_all ( )

◆ PJ_type_free()

void PJ_type_free ( type_t  type)

◆ PJ_value_new()

val_t PJ_value_new ( const char *  name,
const char *  color,
type_t  father 
)

◆ PJ_value_get_or_new()

val_t PJ_value_get_or_new ( const char *  name,
const char *  color,
type_t  father 
)

◆ PJ_value_get()

val_t PJ_value_get ( const char *  name,
const type_t  father 
)

◆ PJ_value_free()

void PJ_value_free ( val_t  value)

◆ TRACE_TI_start()

void TRACE_TI_start ( )

◆ TRACE_TI_end()

void TRACE_TI_end ( )

◆ print_NULL()

void print_NULL ( PajeEvent event)

◆ dump_comment_file()

void dump_comment_file ( const char *  filename)

◆ dump_comment()

void dump_comment ( const char *  comment)

◆ DefineContainerEvent()

void DefineContainerEvent ( type_t  type)

◆ LogVariableTypeDefinition()

void LogVariableTypeDefinition ( type_t  type)

◆ LogStateTypeDefinition()

void LogStateTypeDefinition ( type_t  type)

◆ LogLinkTypeDefinition()

void LogLinkTypeDefinition ( type_t  type,
type_t  source,
type_t  dest 
)

◆ LogEntityValue()

void LogEntityValue ( val_t  value)

◆ LogContainerCreation()

void LogContainerCreation ( container_t  container)

◆ LogContainerDestruction()

void LogContainerDestruction ( container_t  container)

◆ LogDefineEventType()

void LogDefineEventType ( type_t  type)

Variable Documentation

◆ created_categories

xbt_dict_t created_categories

◆ declared_marks

xbt_dict_t declared_marks

◆ user_host_variables

xbt_dict_t user_host_variables

◆ user_vm_variables

xbt_dict_t user_vm_variables

◆ user_link_variables

xbt_dict_t user_link_variables

◆ TRACE_last_timestamp_to_dump

double TRACE_last_timestamp_to_dump

◆ trivaNodeTypes

xbt_dict_t trivaNodeTypes

◆ trivaEdgeTypes

xbt_dict_t trivaEdgeTypes

◆ instr_fmt_type

instr_fmt_type_t instr_fmt_type