Monitoring
==============================

Callback: Functions to track various status during an epoch
-------------------------------------------------------------


======================================================================  ===================================================
:doc:`mx.callback.early.stop <./mx.callback.early.stop>`                Early stop with different conditions
:doc:`mx.callback.log.speedometer <./mx.callback.log.speedometer>`      Calculate the training speed
:doc:`mx.callback.log.train.metric <./mx.callback.log.train.metric>`    Log training metric each period
:doc:`mx.callback.save.checkpoint <./mx.callback.save.checkpoint>`      Save checkpoint to files each period iteration
======================================================================  ===================================================

.. toctree::
   :titlesonly:
   :hidden:
   
   mx.callback.early.stop
   mx.callback.log.speedometer
   mx.callback.log.train.metric
   mx.callback.save.checkpoint

Profiler: Running time and memory consumption of MXNet models
---------------------------------------------------------------------------


==================================================  =================================================
:doc:`mx.profiler.config <./mx.profiler.config>`    Set up the configuration of profiler
:doc:`mx.profiler.state <./mx.profiler.state>`      Set up the profiler state to record operator
==================================================  =================================================

.. toctree::
   :titlesonly:
   :hidden:
   
   mx.profiler.config
   mx.profiler.state

