|
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. | |
| void | stop () |
| Record the stop time of the task. | |
Private Member Functions | |
| std::string | get_name () const |
| Get name of the function pointer. | |
Static Private Member Functions | |
| static void | print_demangled (std::ostream &os, const char *symbol) |
| Print demangled symbol name. | |
Private Attributes | |
| std::pair< void *, unsigned short > | id_ |
| Task identification information. | |
| unsigned short | threads_ |
| Number of threads used by the task. | |
| double | times_ [3] |
| Task trace times: { submit, start, stop }. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const TaskEvent &te) |
| Output the task data using a tab-separated list. | |
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 |