Statistiques#

#include <Statistiques.h>
Brief description

How to reference this class#

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`Statistiques <class-statistiques>`
[Statistiques](#class-statistiques)

Detailed description#

List of Public Methods#

List of Public Static Methods#

List of Protected Methods#

Complete Member Function Documentation#

allocate_communication_tracking_times#

Definition
int Statistiques::allocate_communication_tracking_times()
Brief description

Create the table of communication stats after the declaration of all of the counters.

Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::allocate_communication_tracking_times() <statistiques-public-int-statistiques-allocate-communication-tracking-times>`
[int Statistiques::allocate_communication_tracking_times()](#statistiques-public-int-statistiques-allocate-communication-tracking-times)

begin_communication_tracking#

Definition
void Statistiques::begin_communication_tracking(int cid)
Brief description

Start communication tracking.

Detailed description

Counters stats are saved in the table communication_tracking_info Update the entire table communication_tracking_info : the total time of communication for all communication counter and the communication time per domain j for each counter /!reset the counter associated with cid comm_domaines_on becomes true

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::begin_communication_tracking(int cid) <statistiques-public-void-statistiques-begin-communication-tracking-int-cid>`
[void Statistiques::begin_communication_tracking(int cid)](#statistiques-public-void-statistiques-begin-communication-tracking-int-cid)

begin_count#

Definition
void Statistiques::begin_count(const Stat_Counter_Id &counter_id, bool track_comm=true)
Brief description

Start the count of a counter.

Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::begin_count(const Stat_Counter_Id &counter_id, bool track_comm=true) <statistiques-public-void-statistiques-begin-count-const-stat-counter-id-ref-counter-id-bool-track-comm-equal-true>`
[void Statistiques::begin_count(const Stat_Counter_Id &counter_id, bool track_comm=true)](#statistiques-public-void-statistiques-begin-count-const-stat-counter-id-ref-counter-id-bool-track-comm-equal-true)

compute_avg_min_max_var_per_step#

Definition
void Statistiques::compute_avg_min_max_var_per_step(int tstep)
Brief description
Detailed description

Compute the average, minimum, maximum and variance of the elapsed time on an iteration for each counter

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::compute_avg_min_max_var_per_step(int tstep) <statistiques-public-void-statistiques-compute-avg-min-max-var-per-step-int-tstep>`
[void Statistiques::compute_avg_min_max_var_per_step(int tstep)](#statistiques-public-void-statistiques-compute-avg-min-max-var-per-step-int-tstep)

cumulate_stats#

Definition
void Statistiques::cumulate_stats(int counter_id, Stat_Results &result)
Brief description

Aggregate stats of the counter associated with counter ID to the stats in a Stat_Results type object.

Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::cumulate_stats(int counter_id, Stat_Results &result) <statistiques-public-void-statistiques-cumulate-stats-int-counter-id-stat-results-ref-result>`
[void Statistiques::cumulate_stats(int counter_id, Stat_Results &result)](#statistiques-public-void-statistiques-cumulate-stats-int-counter-id-stat-results-ref-result)

delete_communication_tracking_times#

Definition
int Statistiques::delete_communication_tracking_times()
Brief description

Delete the table of communication stats at the end of the calculation.

Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::delete_communication_tracking_times() <statistiques-public-int-statistiques-delete-communication-tracking-times>`
[int Statistiques::delete_communication_tracking_times()](#statistiques-public-int-statistiques-delete-communication-tracking-times)

dump#

Definition
void Statistiques::dump(const char *message_info, int mode_append)
Brief description

Function that create the file CASE_NAME_log_perf.csv.

Detailed description

This function construct a .csv file in which counter stats are printed. This function prints the global and detailed performance log, depending on the debug_level. It has to be called on every processor simultaneously During this function, all counters are stop and then restart

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::dump(const char *message_info, int mode_append) <statistiques-public-void-statistiques-dump-const-char-ptr-message-info-int-mode-append>`
[void Statistiques::dump(const char *message_info, int mode_append)](#statistiques-public-void-statistiques-dump-const-char-ptr-message-info-int-mode-append)

end_communication_tracking#

Definition
void Statistiques::end_communication_tracking(int cid)
Brief description

Update communications info regarding counter cid and stop the count.

Detailed description

Update the variable communication_tracking_info[i][cid + 1] with the communication tracking associated with counter cid. comm_domaines_on become flase

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::end_communication_tracking(int cid) <statistiques-public-void-statistiques-end-communication-tracking-int-cid>`
[void Statistiques::end_communication_tracking(int cid)](#statistiques-public-void-statistiques-end-communication-tracking-int-cid)

end_count#

Definition
void Statistiques::end_count(const Stat_Counter_Id &counter_id, trustIdType quantity=0, int count=1, bool track_comm=true)
Brief description

End the count of a counter and update values in the Stat_Internals object of the Statistiques object.

Detailed description

Arret du compteur counter_id. On ajoute quantity a la somme des ‘quantity’ (par defaut 0) stockees pour ce compteur et on ajoute ‘count’ (par defaut 1) au compteur d’appels a end_count pour ce compteur (quantity sert a sommer par exemple la taille des donnees traitees pendant ce comptage et count sert a compter combien de fois on a appele ce compteur)

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::end_count(const Stat_Counter_Id &counter_id, trustIdType quantity=0, int count=1, bool track_comm=true) <statistiques-public-void-statistiques-end-count-const-stat-counter-id-ref-counter-id-trustidtype-quantity-equal-0-int-count-equal-1-bool-track-comm-equal-true>`
[void Statistiques::end_count(const Stat_Counter_Id &counter_id, trustIdType quantity=0, int count=1, bool track_comm=true)](#statistiques-public-void-statistiques-end-count-const-stat-counter-id-ref-counter-id-trustidtype-quantity-equal-0-int-count-equal-1-bool-track-comm-equal-true)

get_communication_tracking_info#

Definition
Stat_Results Statistiques::get_communication_tracking_info(int i, int j) const
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`Stat_Results Statistiques::get_communication_tracking_info(int i, int j) const <statistiques-public-stat-results-statistiques-get-communication-tracking-info-int-i-int-j-const>`
[Stat_Results Statistiques::get_communication_tracking_info(int i, int j) const](#statistiques-public-stat-results-statistiques-get-communication-tracking-info-int-i-int-j-const)

get_counter_family#

Definition
const char * Statistiques::get_counter_family(int id)
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`const char * Statistiques::get_counter_family(int id) <statistiques-public-const-char-ptr-statistiques-get-counter-family-int-id>`
[const char * Statistiques::get_counter_family(int id)](#statistiques-public-const-char-ptr-statistiques-get-counter-family-int-id)

get_counter_id_from_description#

Definition
int Statistiques::get_counter_id_from_description(const char *desc) const
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::get_counter_id_from_description(const char *desc) const <statistiques-public-int-statistiques-get-counter-id-from-description-const-char-ptr-desc-const>`
[int Statistiques::get_counter_id_from_description(const char *desc) const](#statistiques-public-int-statistiques-get-counter-id-from-description-const-char-ptr-desc-const)

get_counter_id_from_index_in_comm_tracking_info#

Definition
int Statistiques::get_counter_id_from_index_in_comm_tracking_info(int index) const
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::get_counter_id_from_index_in_comm_tracking_info(int index) const <statistiques-public-int-statistiques-get-counter-id-from-index-in-comm-tracking-info-int-index-const>`
[int Statistiques::get_counter_id_from_index_in_comm_tracking_info(int index) const](#statistiques-public-int-statistiques-get-counter-id-from-index-in-comm-tracking-info-int-index-const)

get_index_in_comm_tracking_info_from_counter_id#

Definition
int Statistiques::get_index_in_comm_tracking_info_from_counter_id(int id) const
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::get_index_in_comm_tracking_info_from_counter_id(int id) const <statistiques-public-int-statistiques-get-index-in-comm-tracking-info-from-counter-id-int-id-const>`
[int Statistiques::get_index_in_comm_tracking_info_from_counter_id(int id) const](#statistiques-public-int-statistiques-get-index-in-comm-tracking-info-from-counter-id-int-id-const)

get_nb_comm_counters#

Definition
int Statistiques::get_nb_comm_counters() const
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`int Statistiques::get_nb_comm_counters() const <statistiques-public-int-statistiques-get-nb-comm-counters-const>`
[int Statistiques::get_nb_comm_counters() const](#statistiques-public-int-statistiques-get-nb-comm-counters-const)

get_stats#

Definition
void Statistiques::get_stats(const Stat_Counter_Id &counter_id, Stat_Results &result)
Brief description

Get back the stats of a counter and store them in a Stat_Resluts type object.

Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::get_stats(const Stat_Counter_Id &counter_id, Stat_Results &result) <statistiques-public-void-statistiques-get-stats-const-stat-counter-id-ref-counter-id-stat-results-ref-result>`
[void Statistiques::get_stats(const Stat_Counter_Id &counter_id, Stat_Results &result)](#statistiques-public-void-statistiques-get-stats-const-stat-counter-id-ref-counter-id-stat-results-ref-result)

get_stats_familly#

Definition
void Statistiques::get_stats_familly(const char *familly, Stat_Results &result)
Brief description

Get back and agregate the stats of a set of counters and store them in a Stat_Resluts type object.

Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::get_stats_familly(const char *familly, Stat_Results &result) <statistiques-public-void-statistiques-get-stats-familly-const-char-ptr-familly-stat-results-ref-result>`
[void Statistiques::get_stats_familly(const char *familly, Stat_Results &result)](#statistiques-public-void-statistiques-get-stats-familly-const-char-ptr-familly-stat-results-ref-result)

get_total_time#

Definition
double Statistiques::get_total_time()
Brief description

Get the protected variable total_time of a Statistics type object.

Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`double Statistiques::get_total_time() <statistiques-public-double-statistiques-get-total-time>`
[double Statistiques::get_total_time()](#statistiques-public-double-statistiques-get-total-time)

last_time#

Definition
double Statistiques::last_time(const Stat_Counter_Id &counter_id)
Brief description

Give the last interval of time the counter has been used.

Detailed description

If the counter is still running, return the time since the last begin_count If the counter is stopped, return the interval of time of the last count

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`double Statistiques::last_time(const Stat_Counter_Id &counter_id) <statistiques-public-double-statistiques-last-time-const-stat-counter-id-ref-counter-id>`
[double Statistiques::last_time(const Stat_Counter_Id &counter_id)](#statistiques-public-double-statistiques-last-time-const-stat-counter-id-ref-counter-id)

new_counter#

Definition
Stat_Counter_Id Statistiques::new_counter(int level, const char *const description, const char *const familly=0, int comm=0)
Brief description

Create a new counter in the Statistiques object.

Detailed description

This function has to be called simultaneously on every processor

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`Stat_Counter_Id Statistiques::new_counter(int level, const char *const description, const char *const familly=0, int comm=0) <statistiques-public-stat-counter-id-statistiques-new-counter-int-level-const-char-ptr-const-description-const-char-ptr-const-familly-equal-0-int-comm-equal-0>`
[Stat_Counter_Id Statistiques::new_counter(int level, const char *const description, const char *const familly=0, int comm=0)](#statistiques-public-stat-counter-id-statistiques-new-counter-int-level-const-char-ptr-const-description-const-char-ptr-const-familly-equal-0-int-comm-equal-0)

reset_counter#

Definition
void Statistiques::reset_counter(int counter_id)
Brief description

Reset the counter related to the counter_id.

Detailed description

Some variables are kept even after the reset : counters_avg_min_max_var_per_step and communication_tracking_info

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::reset_counter(int counter_id) <statistiques-public-void-statistiques-reset-counter-int-counter-id>`
[void Statistiques::reset_counter(int counter_id)](#statistiques-public-void-statistiques-reset-counter-int-counter-id)

reset_counters#

Definition
void Statistiques::reset_counters()
Brief description

Reset all counters.

Detailed description

Some variables are kept even after the reset : counters_avg_min_max_var_per_step and communication_tracking_info

References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::reset_counters() <statistiques-public-void-statistiques-reset-counters>`
[void Statistiques::reset_counters()](#statistiques-public-void-statistiques-reset-counters)

restart_counters#

Definition
void Statistiques::restart_counters()
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::restart_counters() <statistiques-public-void-statistiques-restart-counters>`
[void Statistiques::restart_counters()](#statistiques-public-void-statistiques-restart-counters)

set_debug_level#

Definition
void Statistiques::set_debug_level(int level)
Brief description

Function that change the debug level.

Detailed description

This function have to be called simultanely on each processor

References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::set_debug_level(int level) <statistiques-public-void-statistiques-set-debug-level-int-level>`
[void Statistiques::set_debug_level(int level)](#statistiques-public-void-statistiques-set-debug-level-int-level)

set_three_first_steps_elapsed#

Definition
void Statistiques::set_three_first_steps_elapsed(bool b)
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::set_three_first_steps_elapsed(bool b) <statistiques-public-void-statistiques-set-three-first-steps-elapsed-bool-b>`
[void Statistiques::set_three_first_steps_elapsed(bool b)](#statistiques-public-void-statistiques-set-three-first-steps-elapsed-bool-b)

Statistiques#

Definition
Statistiques::Statistiques()
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`Statistiques::Statistiques() <statistiques-public-statistiques-statistiques>`
[Statistiques::Statistiques()](#statistiques-public-statistiques-statistiques)

stop_counters#

Definition
void Statistiques::stop_counters()
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::stop_counters() <statistiques-public-void-statistiques-stop-counters>`
[void Statistiques::stop_counters()](#statistiques-public-void-statistiques-stop-counters)

~Statistiques#

Definition
Statistiques::~Statistiques()
Brief description
Detailed description
References
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`Statistiques::~Statistiques() <statistiques-public-statistiques-dtor-statistiques>`
[Statistiques::~Statistiques()](#statistiques-public-statistiques-dtor-statistiques)

get_time_now#

Definition
double Statistiques::get_time_now()
Brief description

Return the clock time.

Detailed description

Cette methode renvoie un temps en secondes depuis une origine qui depend de la methode de mesure de la classe Time. Precision, de l’ordre de 1ms maximum.

Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`double Statistiques::get_time_now() <statistiques-public-static-double-statistiques-get-time-now>`
[double Statistiques::get_time_now()](#statistiques-public-static-double-statistiques-get-time-now)

begin_count_#

Definition
void Statistiques::begin_count_(const int id_)
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::begin_count_(const int id_) <statistiques-protected-void-statistiques-begin-count-underscore-const-int-id>`
[void Statistiques::begin_count_(const int id_)](#statistiques-protected-void-statistiques-begin-count-underscore-const-int-id)

end_count_#

Definition
void Statistiques::end_count_(const int id_, trustIdType quantity, int count)
Brief description
Detailed description
References
Referenced By
How to reference this method:

Copy the following pieces of RST/Markdown code to cite this element in other parts of the sphinx documentation (there is a copy button on the top-right when hovering the code block):

:ref:`void Statistiques::end_count_(const int id_, trustIdType quantity, int count) <statistiques-protected-void-statistiques-end-count-underscore-const-int-id-trustidtype-quantity-int-count>`
[void Statistiques::end_count_(const int id_, trustIdType quantity, int count)](#statistiques-protected-void-statistiques-end-count-underscore-const-int-id-trustidtype-quantity-int-count)

Attributes Documentation#

debug_level_ (protected)
int Statistiques::debug_level_
stat_internals (protected)
Stat_Internals* Statistiques::stat_internals
three_first_steps_elapsed_ (protected)
bool Statistiques::three_first_steps_elapsed_

If TRUE, the 3 first time steps are elapsed.

total_time_ (protected)
double Statistiques::total_time_