10 #include "heffte_utils.h"
48 #ifdef Heffte_ENABLE_TRACING
116 ofs << std::setw(40) << e.name << std::setw(20) << e.start_time << std::setw(20) << e.duration <<
"\n";
bool world_rank(int rank)
Returns true if this process has the me rank within the MPI_COMM_WORLD (useful for debugging).
Definition: heffte_utils.h:97
void finalize_tracing()
Finalize tracing and write the result to a file, see the Detailed Description.
Definition: heffte_trace.h:111
std::deque< event > event_log
Logs the list of events (declared in heffte_reshape3d.cpp).
std::string log_filename
Root filename to write out the traces (decaled in heffte_reshape3d.cpp).
void init_tracing(std::string root_filename)
Initialize tracing and remember the root filename for output, see the Detailed Description.
Definition: heffte_trace.h:102
Namespace containing all HeFFTe methods and classes.
Definition: heffte_backend_cuda.h:38
hefftetrace
Definition: heffte_trace.h:84
add_trace(std::string s)
Defines a trace.
Definition: heffte_trace.h:86
std::string name
Defines the name of a trace.
Definition: heffte_trace.h:93
~add_trace()
Saves a trace.
Definition: heffte_trace.h:88
double start_time
Saves the starting wall-clock-time of the trace.
Definition: heffte_trace.h:95
A tracing event.
Definition: heffte_trace.h:56
double duration
Duration according to the MPI high-precision clock.
Definition: heffte_trace.h:62
double start_time
Start time according to MPI high-precision clock.
Definition: heffte_trace.h:60
std::string name
Name of the event.
Definition: heffte_trace.h:58