|
LBANN
0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
|
Functions | |
| std::string | get () |
| void | register_signal_handler (std::string file_base="") |
| std::string lbann::stack_trace::get | ( | ) |
Get human-readable stack trace. Ignores stack frames within the lbann::stack_trace and lbann::lbann_exception namespaces. Calls non-reentrant functions, so behaviour may be undefined if used within a signal handler.
| void lbann::stack_trace::register_signal_handler | ( | std::string | file_base = "" | ) |
Register signal handler. Initializes a signal handler that prints an error message and stack trace to the standard error stream when a fatal signal is detected. If a file name base is provided, it also writes to the file "<file_base>_rank<MPI rank>.txt".
Fatal signals are those that cause an abnormal termination by default, according to the POSIX C standard (http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html).
This functionality is somewhat risky since the handler calls non-reentrant functions, which can result in undefined behavior (see https://www.ibm.com/developerworks/library/l-reent/).