X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/42f80f7c0ce00e583f9c787127492afecd17419e..d2cb7a4992b0f91be3b97edc041bfc194df22515:/src/instr/instr_private.hpp diff --git a/src/instr/instr_private.hpp b/src/instr/instr_private.hpp index 61f2e6890f..808e7f5aa3 100644 --- a/src/instr/instr_private.hpp +++ b/src/instr/instr_private.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2010-2023. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -10,10 +10,6 @@ #include "simgrid/instr.h" #include "simgrid/s4u/Actor.hpp" -#include "src/instr/instr_paje_containers.hpp" -#include "src/instr/instr_paje_events.hpp" -#include "src/instr/instr_paje_types.hpp" -#include "src/instr/instr_paje_values.hpp" #include #include /** std::setprecision **/ @@ -24,8 +20,7 @@ #include #include -namespace simgrid { -namespace instr { +namespace simgrid::instr { namespace paje { void dump_generator_version(); @@ -41,14 +36,11 @@ void dump_header(bool basic, bool display_sizes); */ enum class TraceFormat { Paje, /*TimeIndependent*/ Ti }; extern TraceFormat trace_format; -extern int trace_precision; extern double last_timestamp_to_dump; void init(); void define_callbacks(); -void platform_graph_export_graphviz(const std::string& output_filename); - void resource_set_utilization(const char* type, const char* name, const char* resource, const std::string& category, double value, double now, double delta); void dump_buffer(bool force); @@ -71,20 +63,20 @@ public: // NoOpTI: init, finalize, test, wait, barrier class NoOpTIData : public TIData { - explicit NoOpTIData(const std::string&, double); // disallow this constructor inherited from TIData - public: using TIData::TIData; + explicit NoOpTIData(const std::string&, double) = delete; // disallow this constructor inherited from TIData + std::string print() override { return get_name(); } std::string display_size() override { return "NA"; } }; // CPuTI: compute, sleep (+ waitAny and waitall out of laziness) class CpuTIData : public TIData { - explicit CpuTIData(const std::string&); // disallow this constructor inherited from TIData - public: using TIData::TIData; + explicit CpuTIData(const std::string&) = delete; // disallow this constructor inherited from TIData + std::string print() override { std::stringstream stream; @@ -119,13 +111,13 @@ public: // CollTI: bcast, reduce, allreduce, gather, scatter, allgather, alltoall class CollTIData : public TIData { int root_; - int send_size_; - int recv_size_; + size_t send_size_; + size_t recv_size_; std::string send_type_; std::string recv_type_; public: - CollTIData(const std::string& name, int root, double amount, int send_size, int recv_size, + CollTIData(const std::string& name, int root, double amount, size_t send_size, size_t recv_size, const std::string& send_type, const std::string& recv_type) : TIData(name, amount) , root_(root) @@ -138,7 +130,7 @@ public: { std::stringstream stream; stream << get_name() << " " << send_size_ << " "; - if (recv_size_ >= 0) + if (recv_size_ > 0) stream << recv_size_ << " "; if (get_amount() >= 0.0) stream << get_amount() << " "; @@ -154,16 +146,16 @@ public: // VarCollTI: gatherv, scatterv, allgatherv, alltoallv (+ reducescatter out of laziness) class VarCollTIData : public TIData { int root_; - size_t send_size_; + long int send_size_; std::shared_ptr> sendcounts_; - size_t recv_size_; + long int recv_size_; std::shared_ptr> recvcounts_; std::string send_type_; std::string recv_type_; public: - VarCollTIData(const std::string& name, int root, size_t send_size, std::shared_ptr> sendcounts, - size_t recv_size, std::shared_ptr> recvcounts, const std::string& send_type, + VarCollTIData(const std::string& name, int root, long int send_size, std::shared_ptr> sendcounts, + long int recv_size, std::shared_ptr> recvcounts, const std::string& send_type, const std::string& recv_type) : TIData(name) , root_(root) @@ -178,12 +170,12 @@ public: { std::stringstream stream; stream << get_name() << " "; - if (send_size_ > 0) + if (send_size_ > -1) stream << send_size_ << " "; if (sendcounts_ != nullptr) for (auto count : *sendcounts_) stream << count << " "; - if (recv_size_ > 0) + if (recv_size_ > -1) stream << recv_size_ << " "; if (recvcounts_ != nullptr) for (auto count : *recvcounts_) @@ -207,7 +199,7 @@ class WaitTIData : public TIData { int tag_; public: - WaitTIData(int src, int dest, int tag) : TIData("wait"), src_(src), dest_(dest), tag_(tag){}; + WaitTIData(const std::string& name, int src, int dest, int tag) : TIData(name), src_(src), dest_(dest), tag_(tag){}; std::string print() override { @@ -232,16 +224,14 @@ public: } std::string display_size() override { return "NA"; } }; -} // namespace instr -} // namespace simgrid +} // namespace simgrid::instr -XBT_PRIVATE std::string instr_pid(simgrid::s4u::Actor const& proc); +#include "src/instr/instr_paje_containers.hpp" +#include "src/instr/instr_paje_events.hpp" +#include "src/instr/instr_paje_types.hpp" +#include "src/instr/instr_paje_values.hpp" -extern XBT_PRIVATE std::set> created_categories; -extern XBT_PRIVATE std::set> declared_marks; -extern XBT_PRIVATE std::set> user_host_variables; -extern XBT_PRIVATE std::set> user_vm_variables; -extern XBT_PRIVATE std::set> user_link_variables; +XBT_PRIVATE std::string instr_pid(simgrid::s4u::Actor const& proc); /* from instr_config.c */ XBT_PRIVATE bool TRACE_needs_platform(); @@ -265,9 +255,9 @@ XBT_PUBLIC bool TRACE_smpi_view_internals(); /* instr_paje.c */ void instr_new_variable_type(const std::string& new_typename, const std::string& color); -void instr_new_user_variable_type(const std::string& father_type, const std::string& new_typename, +void instr_new_user_variable_type(const std::string& parent_type, const std::string& new_typename, const std::string& color); -void instr_new_user_state_type(const std::string& father_type, const std::string& new_typename); +void instr_new_user_state_type(const std::string& parent_type, const std::string& new_typename); void instr_new_value_for_user_state_type(const std::string& new_typename, const char* value, const std::string& color); XBT_PRIVATE void TRACE_help();