X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b94fa144e9b0c70d91ea56d7d5e40d6d1341b64a..1750409d1aafcec7d8ea213624517fe6ab1fc67e:/src/instr/instr_TI_trace.cpp diff --git a/src/instr/instr_TI_trace.cpp b/src/instr/instr_TI_trace.cpp index ce579e3c07..dfbb6a06b5 100644 --- a/src/instr/instr_TI_trace.cpp +++ b/src/instr/instr_TI_trace.cpp @@ -22,7 +22,7 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(instr_TI_trace, instr_trace, "tracing event syst extern FILE *tracing_file; double prefix=0.0; -xbt_dict_t tracing_files = NULL; +xbt_dict_t tracing_files = nullptr; extern s_instr_trace_writer_t active_writer; @@ -37,9 +37,8 @@ void TRACE_TI_start(void) { char *filename = TRACE_get_filename(); tracing_file = fopen(filename, "w"); - if (tracing_file == NULL) { - THROWF(system_error, 1, "Tracefile %s could not be opened for writing.", - filename); + if (tracing_file == nullptr) { + THROWF(system_error, 1, "Tracefile %s could not be opened for writing.", filename); } XBT_DEBUG("Filename %s is open for writing", filename); @@ -49,7 +48,6 @@ void TRACE_TI_start(void) /* output comment file */ dump_comment_file(TRACE_get_comment_file()); - } void TRACE_TI_end(void) @@ -63,66 +61,54 @@ void TRACE_TI_end(void) void print_TICreateContainer(paje_event_t event) { //if we are in the mode with only one file - static FILE *temp = NULL; + static FILE *temp = nullptr; - if (tracing_files == NULL) { - tracing_files = xbt_dict_new_homogeneous(NULL); + if (tracing_files == nullptr) { + tracing_files = xbt_dict_new_homogeneous(nullptr); //generate unique run id with time prefix = xbt_os_time(); } - if (!xbt_cfg_get_boolean(_sg_cfg_set, "tracing/smpi/format/ti_one_file") - || temp == NULL) { + if (!xbt_cfg_get_boolean("tracing/smpi/format/ti-one-file") || temp == nullptr) { char *folder_name = bprintf("%s_files", TRACE_get_filename()); - char *filename = bprintf("%s/%f_%s.txt", folder_name, prefix, - ((createContainer_t) event->data)->container->name); + char *filename = bprintf("%s/%f_%s.txt", folder_name, prefix, ((createContainer_t) event->data)->container->name); #ifdef WIN32 _mkdir(folder_name); #else mkdir(folder_name, S_IRWXU | S_IRWXG | S_IRWXO); #endif temp = fopen(filename, "w"); - if (temp == NULL) - xbt_die("Tracefile %s could not be opened for writing: %s", - filename, strerror(errno)); + xbt_assert(temp, "Tracefile %s could not be opened for writing: %s", filename, strerror(errno)); fprintf(tracing_file, "%s\n", filename); xbt_free(folder_name); xbt_free(filename); } - xbt_dict_set(tracing_files, - ((createContainer_t) event->data)->container->name, - (void *) temp, NULL); + xbt_dict_set(tracing_files, ((createContainer_t) event->data)->container->name, (void *) temp, nullptr); } void print_TIDestroyContainer(paje_event_t event) { - if (!xbt_cfg_get_boolean(_sg_cfg_set, "tracing/smpi/format/ti_one_file")|| - xbt_dict_length(tracing_files) == 1) { - FILE* f = (FILE*)xbt_dict_get_or_null(tracing_files, - ((destroyContainer_t) event->data)->container->name); + if (!xbt_cfg_get_boolean("tracing/smpi/format/ti-one-file")|| xbt_dict_length(tracing_files) == 1) { + FILE* f = (FILE*)xbt_dict_get_or_null(tracing_files, ((destroyContainer_t) event->data)->container->name); fclose(f); } xbt_dict_remove(tracing_files, ((destroyContainer_t) event->data)->container->name); } - void print_TIPushState(paje_event_t event) { - - int i; - //char* function=NULL; - if (((pushState_t) event->data)->extra == NULL) + //char* function=nullptr; + if (((pushState_t) event->data)->extra == nullptr) return; - instr_extra_data extra = - (instr_extra_data) (((pushState_t) event->data)->extra); + instr_extra_data extra = (instr_extra_data) (((pushState_t) event->data)->extra); - char *process_id = NULL; + char *process_id = nullptr; //FIXME: dirty extract "rank-" from the name, as we want the bare process id here - if (strstr(((pushState_t) event->data)->container->name, "rank-") == NULL) + if (strstr(((pushState_t) event->data)->container->name, "rank-") == nullptr) process_id = xbt_strdup(((pushState_t) event->data)->container->name); else process_id = xbt_strdup(((pushState_t) event->data)->container->name + 5); @@ -130,7 +116,6 @@ void print_TIPushState(paje_event_t event) FILE* trace_file = (FILE* )xbt_dict_get(tracing_files, ((pushState_t) event->data)->container->name); switch (extra->type) { - case TRACING_INIT: fprintf(trace_file, "%s init\n", process_id); break; @@ -138,20 +123,16 @@ void print_TIPushState(paje_event_t event) fprintf(trace_file, "%s finalize\n", process_id); break; case TRACING_SEND: - fprintf(trace_file, "%s send %d %d %s\n", process_id, extra->dst, - extra->send_size, extra->datatype1); + fprintf(trace_file, "%s send %d %d %s\n", process_id, extra->dst, extra->send_size, extra->datatype1); break; case TRACING_ISEND: - fprintf(trace_file, "%s isend %d %d %s\n", process_id, extra->dst, - extra->send_size, extra->datatype1); + fprintf(trace_file, "%s isend %d %d %s\n", process_id, extra->dst, extra->send_size, extra->datatype1); break; case TRACING_RECV: - fprintf(trace_file, "%s recv %d %d %s\n", process_id, extra->src, - extra->send_size, extra->datatype1); + fprintf(trace_file, "%s recv %d %d %s\n", process_id, extra->src, extra->send_size, extra->datatype1); break; case TRACING_IRECV: - fprintf(trace_file, "%s irecv %d %d %s\n", process_id, extra->src, - extra->send_size, extra->datatype1); + fprintf(trace_file, "%s irecv %d %d %s\n", process_id, extra->src, extra->send_size, extra->datatype1); break; case TRACING_TEST: fprintf(trace_file, "%s test\n", process_id); @@ -172,19 +153,16 @@ void print_TIPushState(paje_event_t event) fprintf(trace_file, "\n"); break; case TRACING_REDUCE: // rank reduce comm_size comp_size (root) (datatype) - fprintf(trace_file, "%s reduce %d %f ", process_id, extra->send_size, - extra->comp_size); + fprintf(trace_file, "%s reduce %d %f ", process_id, extra->send_size, extra->comp_size); if (extra->root != 0 || (extra->datatype1 && strcmp(extra->datatype1, ""))) fprintf(trace_file, "%d %s", extra->root, extra->datatype1); fprintf(trace_file, "\n"); break; case TRACING_ALLREDUCE: // rank allreduce comm_size comp_size (datatype) - fprintf(trace_file, "%s allreduce %d %f %s\n", process_id, - extra->send_size, extra->comp_size, extra->datatype1); + fprintf(trace_file, "%s allreduce %d %f %s\n", process_id, extra->send_size, extra->comp_size, extra->datatype1); break; case TRACING_ALLTOALL: // rank alltoall send_size recv_size (sendtype) (recvtype) - fprintf(trace_file, "%s alltoall %d %d %s %s\n", process_id, - extra->send_size, extra->recv_size, extra->datatype1, + fprintf(trace_file, "%s alltoall %d %d %s %s\n", process_id, extra->send_size, extra->recv_size, extra->datatype1, extra->datatype2); break; case TRACING_ALLTOALLV: // rank alltoallv send_size [sendcounts] recv_size [recvcounts] (sendtype) (recvtype) @@ -197,9 +175,8 @@ void print_TIPushState(paje_event_t event) fprintf(trace_file, "%s %s \n", extra->datatype1, extra->datatype2); break; case TRACING_GATHER: // rank gather send_size recv_size root (sendtype) (recvtype) - fprintf(trace_file, "%s gather %d %d %d %s %s\n", process_id, - extra->send_size, extra->recv_size, extra->root, extra->datatype1, - extra->datatype2); + fprintf(trace_file, "%s gather %d %d %d %s %s\n", process_id, extra->send_size, extra->recv_size, extra->root, + extra->datatype1, extra->datatype2); break; case TRACING_ALLGATHERV: // rank allgatherv send_size [recvcounts] (sendtype) (recvtype) fprintf(trace_file, "%s allgatherv %d ", process_id, extra->send_size); @@ -238,16 +215,14 @@ void print_TIPushState(paje_event_t event) case TRACING_SSEND: case TRACING_ISSEND: default: - - XBT_WARN - ("Call from %s impossible to translate into replay command : Not implemented (yet)", + XBT_WARN ("Call from %s impossible to translate into replay command : Not implemented (yet)", ((pushState_t) event->data)->value->name); break; } - if (extra->recvcounts != NULL) + if (extra->recvcounts != nullptr) xbt_free(extra->recvcounts); - if (extra->sendcounts != NULL) + if (extra->sendcounts != nullptr) xbt_free(extra->sendcounts); xbt_free(process_id); xbt_free(extra);