LBANN  0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
lbann::callback::debug_io Class Reference

#include <debug_io.hpp>

Inheritance diagram for lbann::callback::debug_io:
[legend]
Collaboration diagram for lbann::callback::debug_io:
[legend]

Public Member Functions

 debug_io (execution_mode phase=execution_mode::invalid, int debug_lvl=0)
 
 debug_io (const debug_io &)=default
 
debug_iooperator= (const debug_io &)=default
 
debug_iocopy () const override
 
void on_epoch_begin (model *m) override
 
void on_forward_prop_begin (model *m, Layer *l) override
 
void on_validation_begin (model *m) override
 
void on_evaluate_forward_prop_begin (model *m, Layer *l) override
 
void on_test_begin (model *m) override
 
void print_fp_start (model *m, input_layer< DataType > *input)
 
void print_phase_start (model *m, execution_mode mode)
 
std::string name () const override
 Return this callback's name. More...
 
Serialization
template<class Archive >
void serialize (Archive &ar)
 Store state to archive for checkpoint and restart. More...
 
- Public Member Functions inherited from lbann::callback_base
 callback_base (int batch_interval=1)
 Initialize a callback with an optional batch interval. More...
 
 callback_base (const callback_base &)=default
 
virtual ~callback_base ()=default
 
virtual void setup (trainer *t)
 Called once to set up the callback on the trainer. More...
 
virtual void setup (model *m)
 Called once to set up the callback on the model (after all layers are set up). More...
 
virtual void on_setup_end (model *m)
 Called at the end of setup. More...
 
virtual void on_train_begin (model *m)
 Called at the beginning of training. More...
 
virtual void on_train_end (model *m)
 Called at the end of training. More...
 
virtual void on_phase_end (model *m)
 Called at the end of every phase (multiple epochs) in a layer-wise model training. More...
 
virtual void on_epoch_end (model *m)
 Called immediate after the end of each epoch. More...
 
virtual void on_batch_begin (model *m)
 Called at the beginning of a (mini-)batch. More...
 
virtual void on_batch_end (model *m)
 Called immediately after the end of a (mini-)batch. More...
 
virtual void on_test_end (model *m)
 Called immediately after the end of testing. More...
 
virtual void on_validation_end (model *m)
 Called immediately after the end of validation. More...
 
virtual void on_forward_prop_begin (model *m)
 Called when a model begins forward propagation. More...
 
virtual void on_forward_prop_end (model *m)
 Called when a model ends forward propagation. More...
 
virtual void on_forward_prop_end (model *m, Layer *l)
 Called when a layer ends forward propagation. More...
 
virtual void on_backward_prop_begin (model *m)
 Called when a model begins backward propagation. More...
 
virtual void on_backward_prop_begin (model *m, Layer *l)
 Called when a layer begins backward propagation. More...
 
virtual void on_backward_prop_end (model *m)
 Called when a model ends backward propagation. More...
 
virtual void on_backward_prop_end (model *m, Layer *l)
 Called when a layer ends backward propagation. More...
 
virtual void on_optimize_begin (model *m)
 Called when a model begins optimization. More...
 
virtual void on_optimize_begin (model *m, weights *w)
 Called when weights begins optimization. More...
 
virtual void on_optimize_end (model *m)
 Called when a model ends optimization. More...
 
virtual void on_optimize_end (model *m, weights *w)
 Called when weights ends optimization. More...
 
virtual void on_batch_evaluate_begin (model *m)
 Called at the beginning of a (mini-)batch evaluation (validation / testing). More...
 
virtual void on_batch_evaluate_end (model *m)
 Called at the end of a (mini-)batch evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_begin (model *m)
 Called when a model begins forward propagation for evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_end (model *m)
 Called when a model ends forward propagation for evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_end (model *m, Layer *l)
 Called when a layer ends forward propagation for evaluation (validation / testing). More...
 
int get_batch_interval () const
 Return the batch interval. More...
 
virtual description get_description () const
 Human-readable description. More...
 
template<class Archive >
void serialize (Archive &ar)
 Store state to archive for checkpoint and restart. More...
 
void write_proto (lbann_data::Callback &proto) const
 Write a protobuf description of the callback. More...
 

Private Member Functions

void write_specific_proto (lbann_data::Callback &proto) const final
 

Private Attributes

execution_mode m_debug_phase
 
int m_debug_lvl
 

Additional Inherited Members

- Protected Member Functions inherited from lbann::callback_base
std::string get_multi_trainer_path (const model &m, const std::string &root_dir)
 Build a standard directory hierarchy including trainer ID. More...
 
std::string get_multi_trainer_ec_model_path (const model &m, const std::string &root_dir)
 Build a standard directory hierachy including trainer, execution context, and model information (in that order). More...
 
std::string get_multi_trainer_model_path (const model &m, const std::string &root_dir)
 Build a standard directory hierachy including trainer, model information in that order. More...
 
callback_baseoperator= (const callback_base &)=default
 Copy-assignment operator. More...
 
- Protected Attributes inherited from lbann::callback_base
int m_batch_interval
 Batch methods should once every this many steps. More...
 

Detailed Description

Print status updates on where training is.

Definition at line 43 of file debug_io.hpp.

Constructor & Destructor Documentation

◆ debug_io() [1/2]

lbann::callback::debug_io::debug_io ( execution_mode  phase = execution_mode::invalid,
int  debug_lvl = 0 
)
inline

Debug a particular phase; use invalid to debug every phase.

Definition at line 56 of file debug_io.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ debug_io() [2/2]

lbann::callback::debug_io::debug_io ( const debug_io )
default

Member Function Documentation

◆ copy()

debug_io* lbann::callback::debug_io::copy ( ) const
inlineoverridevirtual

Implements lbann::callback_base.

Definition at line 61 of file debug_io.hpp.

Here is the call graph for this function:

◆ name()

std::string lbann::callback::debug_io::name ( ) const
inlineoverridevirtual

Return this callback's name.

Implements lbann::callback_base.

Definition at line 80 of file debug_io.hpp.

Here is the call graph for this function:

◆ on_epoch_begin()

void lbann::callback::debug_io::on_epoch_begin ( model m)
overridevirtual

Print that a training epoch is being started.

Reimplemented from lbann::callback_base.

Here is the caller graph for this function:

◆ on_evaluate_forward_prop_begin()

void lbann::callback::debug_io::on_evaluate_forward_prop_begin ( model m,
Layer l 
)
overridevirtual

Print that an evaluation forward prop is beginning.

Reimplemented from lbann::callback_base.

Here is the caller graph for this function:

◆ on_forward_prop_begin()

void lbann::callback::debug_io::on_forward_prop_begin ( model m,
Layer l 
)
overridevirtual

Print that forward prop for a layer is beginning.

Reimplemented from lbann::callback_base.

Here is the caller graph for this function:

◆ on_test_begin()

void lbann::callback::debug_io::on_test_begin ( model m)
overridevirtual

Print I/O details at the beginning of testing.

Reimplemented from lbann::callback_base.

Here is the caller graph for this function:

◆ on_validation_begin()

void lbann::callback::debug_io::on_validation_begin ( model m)
overridevirtual

Print I/O details at the beginning of validation.

Reimplemented from lbann::callback_base.

Here is the caller graph for this function:

◆ operator=()

debug_io& lbann::callback::debug_io::operator= ( const debug_io )
default
Here is the caller graph for this function:

◆ print_fp_start()

void lbann::callback::debug_io::print_fp_start ( model m,
input_layer< DataType > *  input 
)

Common format for printing I/O stats at the start of a mini-batch

Here is the caller graph for this function:

◆ print_phase_start()

void lbann::callback::debug_io::print_phase_start ( model m,
execution_mode  mode 
)

Common format for printing I/O stats at the start of a phase

Here is the caller graph for this function:

◆ serialize()

template<class Archive >
void lbann::callback::debug_io::serialize ( Archive &  ar)

Store state to archive for checkpoint and restart.

Here is the caller graph for this function:

◆ write_specific_proto()

void lbann::callback::debug_io::write_specific_proto ( lbann_data::Callback &  proto) const
finalprivatevirtual

Add callback specific data to prototext

Implements lbann::callback_base.

Here is the caller graph for this function:

Member Data Documentation

◆ m_debug_lvl

int lbann::callback::debug_io::m_debug_lvl
private

Definition at line 97 of file debug_io.hpp.

◆ m_debug_phase

execution_mode lbann::callback::debug_io::m_debug_phase
private

The phase to debug.

Definition at line 96 of file debug_io.hpp.


The documentation for this class was generated from the following file: