MADNESS
0.10.1
|
#include <thread.h>
Public Member Functions | |
void | start (const std::pair< void *, unsigned short > &id, const unsigned short threads, const double submit_time) |
Record the start time of the task and collect task information. More... | |
void | stop () |
Record the stop time of the task. More... | |
Private Member Functions | |
std::string | get_name () const |
Get name of the function pointer. More... | |
Static Private Member Functions | |
static void | print_demangled (std::ostream &os, const char *symbol) |
Print demangled symbol name. More... | |
Private Attributes | |
std::pair< void *, unsigned short > | id_ |
Task identification information. More... | |
unsigned short | threads_ |
Number of threads used by the task. More... | |
double | times_ [3] |
Task trace times: { submit, start, stop }. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const TaskEvent &te) |
Output the task data using a tab-separated list. More... | |
Task event class.
This class is used to record the task trace information, including submit, start, and stop times, as well as identification information.
|
inlineprivate |
|
inlinestaticprivate |
Print demangled symbol name.
Add the demangled symbol name to os
. If demangling fails, the unmodified symbol name is used instead. If symbol is NULL, "UNKNOWN" is used instead. A tab character is added after the symbol name.
[in,out] | os | The output stream. |
[in] | symbol | The symbol to add to the stream. |
References madness::name(), and status.
|
inline |
Record the start time of the task and collect task information.
[in,out] | id | The task identifier (a function pointer or const char*) and an integer to differentiate the different types. |
[in] | threads | The number of threads this task uses. |
[in] | submit_time | The time that the task was submitted to the task queue. |
References id_, threads_, times_, and madness::wall_time().
|
inline |
Record the stop time of the task.
References times_, and madness::wall_time().
|
friend |
Output the task data using a tab-separated list.
Output information includes
[in,out] | os | The output stream. |
[in] | te | The task event to be output. |
os
reference.
|
private |
Task identification information.
Referenced by get_name(), and start().
|
private |
Number of threads used by the task.
Referenced by start().
|
private |