Skip to content

mod_signal_handler

Lines: 75 | Visibility: private

Handling signals like SIGINT (ctr-c) and SIGTERM (slurm time limit).

Only init_signal_handler() needs to be called from the main program. The signal handler records SIGINT and SIGTERM. check_signal_collective() performs cleanup from normal program execution. author: Moritz R. Schaefer

Dependencies

Uses

module~~mod_signal_handler~~UsesGraph module~mod_signal_handler mod_signal_handler iso_c_binding iso_c_binding module~mod_signal_handler->iso_c_binding module~mod_global_warning mod_global_warning module~mod_signal_handler->module~mod_global_warning module~mod_mpi mod_mpi module~mod_signal_handler->module~mod_mpi module~mod_throw mod_throw module~mod_signal_handler->module~mod_throw module~mod_timer mod_timer module~mod_signal_handler->module~mod_timer module~mod_write_headers mod_write_headers module~mod_signal_handler->module~mod_write_headers module~mod_global_warning->module~mod_throw module~mod_abstract_warning mod_abstract_warning module~mod_global_warning->module~mod_abstract_warning module~mod_io mod_io module~mod_global_warning->module~mod_io module~mod_precision mod_precision module~mod_mpi->module~mod_precision mpi_f08 mpi_f08 module~mod_mpi->mpi_f08 module~mod_throw->iso_c_binding module~mod_throw->module~mod_mpi iso_fortran_env iso_fortran_env module~mod_throw->iso_fortran_env module~mod_throw->module~mod_io module~mod_throw->module~mod_precision module~mod_sort mod_sort module~mod_throw->module~mod_sort module~mod_timer->module~mod_throw ieee_arithmetic ieee_arithmetic module~mod_timer->ieee_arithmetic module~mod_timer->module~mod_io module~mod_optional_args mod_optional_args module~mod_timer->module~mod_optional_args module~mod_timer->module~mod_precision module~mod_write_headers->module~mod_mpi module~mod_write_headers->module~mod_throw module~mod_write_headers->module~mod_timer module~mod_abstract_property_model mod_abstract_property_model module~mod_write_headers->module~mod_abstract_property_model module~mod_abstractoptimizer mod_abstractoptimizer module~mod_write_headers->module~mod_abstractoptimizer module~mod_decorations mod_decorations module~mod_write_headers->module~mod_decorations module~mod_git_info mod_git_info module~mod_write_headers->module~mod_git_info module~mod_write_headers->module~mod_io module~mod_settings mod_settings module~mod_write_headers->module~mod_settings module~mod_version mod_version module~mod_write_headers->module~mod_version module~mod_abstract_property_model->module~mod_throw module~mod_abstract_property_model->module~mod_io module~mod_abstract_property_model->module~mod_precision module~mod_abstract_property_model->module~mod_settings module~mod_array_helpers mod_array_helpers module~mod_abstract_property_model->module~mod_array_helpers module~mod_initialize_array mod_initialize_array module~mod_abstract_property_model->module~mod_initialize_array module~mod_random mod_random module~mod_abstract_property_model->module~mod_random module~mod_abstractoptimizer->module~mod_global_warning module~mod_abstractoptimizer->module~mod_mpi module~mod_abstractoptimizer->module~mod_throw module~mod_abstractoptimizer->module~mod_io module~mod_abstractoptimizer->module~mod_precision module~mod_abstractoptimizer->module~mod_settings module~mod_gradient_clipping mod_gradient_clipping module~mod_abstractoptimizer->module~mod_gradient_clipping module~mod_loss_abstract mod_loss_abstract module~mod_abstractoptimizer->module~mod_loss_abstract module~mod_nan_check mod_nan_check module~mod_abstractoptimizer->module~mod_nan_check module~mod_decorations->module~mod_throw module~mod_decorations->module~mod_io module~mod_decorations->module~mod_precision module~mod_io->iso_fortran_env module~mod_io->module~mod_optional_args module~mod_io->module~mod_precision module~mod_precision->iso_c_binding module~mod_precision->iso_fortran_env module~mod_settings->module~mod_throw module~mod_settings->module~mod_io module~mod_settings->module~mod_precision module~mod_constants mod_constants module~mod_settings->module~mod_constants module~mod_cpu_vendor mod_cpu_vendor module~mod_settings->module~mod_cpu_vendor module~mod_periodic_table mod_periodic_table module~mod_settings->module~mod_periodic_table module~mod_sort->module~mod_precision module~mod_array_helpers->module~mod_throw module~mod_array_helpers->module~mod_precision module~mod_constants->iso_c_binding module~mod_constants->module~mod_precision module~mod_cpu_vendor->iso_c_binding module~mod_gradient_clipping->module~mod_precision module~mod_gradient_clipping->module~mod_settings module~mod_initialize_array->module~mod_mpi module~mod_initialize_array->module~mod_throw module~mod_initialize_array->module~mod_io module~mod_initialize_array->module~mod_precision module~mod_initialize_array->module~mod_random module~mod_parameter_file mod_parameter_file module~mod_initialize_array->module~mod_parameter_file module~mod_loss_abstract->module~mod_mpi module~mod_loss_abstract->module~mod_precision module~mod_nan_check->module~mod_throw module~mod_nan_check->ieee_arithmetic module~mod_nan_check->module~mod_io module~mod_nan_check->module~mod_precision module~mod_periodic_table->module~mod_throw module~mod_periodic_table->module~mod_io module~mod_periodic_table->module~mod_precision module~mod_periodic_table->module~mod_array_helpers module~mod_periodic_table->module~mod_constants module~mod_random->module~mod_precision module~mod_random->module~mod_constants module~mod_parameter_file->module~mod_throw module~mod_parameter_file->module~mod_io module~mod_parameter_file->module~mod_precision module~mod_parameter_file->module~mod_nan_check module~mod_abstract_broadcast_file mod_abstract_broadcast_file module~mod_parameter_file->module~mod_abstract_broadcast_file module~mod_abstract_broadcast_file->module~mod_mpi module~mod_abstract_broadcast_file->module~mod_throw module~mod_abstract_broadcast_file->module~mod_io module~mod_genericfile mod_genericfile module~mod_abstract_broadcast_file->module~mod_genericfile module~mod_sanitize mod_sanitize module~mod_abstract_broadcast_file->module~mod_sanitize module~mod_genericfile->module~mod_mpi module~mod_genericfile->module~mod_throw module~mod_genericfile->module~mod_io module~mod_sanitize->module~mod_throw

Used By

module~~mod_signal_handler~~UsedByGraph module~mod_signal_handler mod_signal_handler module~mod_calculate_coulomb_matrix mod_calculate_coulomb_matrix module~mod_calculate_coulomb_matrix->module~mod_signal_handler module~mod_dataset_statistics_chi_all_chunks mod_dataset_statistics_chi_all_chunks module~mod_dataset_statistics_chi_all_chunks->module~mod_signal_handler module~mod_feature_map_scaling_all_chunks mod_feature_map_scaling_all_chunks module~mod_feature_map_scaling_all_chunks->module~mod_signal_handler module~mod_precompute_features_all_chunks mod_precompute_features_all_chunks module~mod_precompute_features_all_chunks->module~mod_signal_handler module~mod_precompute_global_features_all_chunks mod_precompute_global_features_all_chunks module~mod_precompute_global_features_all_chunks->module~mod_signal_handler module~mod_predict_all_chunks mod_predict_all_chunks module~mod_predict_all_chunks->module~mod_signal_handler module~mod_predict_mode mod_predict_mode module~mod_predict_mode->module~mod_signal_handler module~mod_train_loop_4g_charges mod_train_loop_4g_charges module~mod_train_loop_4g_charges->module~mod_signal_handler module~mod_train_loop_atomic_property mod_train_loop_atomic_property module~mod_train_loop_atomic_property->module~mod_signal_handler module~mod_train_loop_short_range mod_train_loop_short_range module~mod_train_loop_short_range->module~mod_signal_handler program~runner RuNNer program~runner->module~mod_signal_handler program~runner->module~mod_calculate_coulomb_matrix program~runner->module~mod_precompute_features_all_chunks program~runner->module~mod_precompute_global_features_all_chunks program~runner->module~mod_predict_mode module~mod_train_mode mod_train_mode program~runner->module~mod_train_mode module~mod_train_mode->module~mod_dataset_statistics_chi_all_chunks module~mod_train_mode->module~mod_feature_map_scaling_all_chunks module~mod_train_mode->module~mod_predict_all_chunks module~mod_train_mode->module~mod_train_loop_4g_charges module~mod_train_mode->module~mod_train_loop_atomic_property module~mod_train_mode->module~mod_train_loop_short_range

Module Variables

  • SIGHUP : integer(c_int)
  • SIGINT : integer(c_int)
  • SIGTERM : integer(c_int)
  • handler_ptr : type(c_funptr)
  • initialized : logical
  • pending_signal : integer(c_int)

Procedures Summary

Name Type Description
signal_pending Function
get_pending_signal Function
init_signal_handler Subroutine
signal_handler Subroutine
check_signal_collective Subroutine

Interface Details

interface signal


Procedure Details

function signal_pending

function signal_pending()

function get_pending_signal

function get_pending_signal()

subroutine init_signal_handler

subroutine init_signal_handler()

Called By

proc~~init_signal_handler~~CalledByGraph proc~init_signal_handler mod_signal_handler::init_signal_handler program~runner RuNNer program~runner->proc~init_signal_handler

subroutine signal_handler

subroutine signal_handler( &
    sig &
)

Arguments

  • sig : integer(c_int)

subroutine check_signal_collective

subroutine check_signal_collective()

Called By

proc~~check_signal_collective~~CalledByGraph proc~check_signal_collective mod_signal_handler::check_signal_collective proc~dataset_statistics_chi_all_chunks mod_dataset_statistics_chi_all_chunks::dataset_statistics_chi_all_chunks proc~dataset_statistics_chi_all_chunks->proc~check_signal_collective proc~determine_scaling_factor_and_centering_subtrahend_all_chunks~3 mod_feature_map_scaling_all_chunks::determine_scaling_factor_and_centering_subtrahend_all_chunks proc~determine_scaling_factor_and_centering_subtrahend_all_chunks~3->proc~check_signal_collective proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->proc~check_signal_collective proc~precompute_features_all_chunks mod_precompute_features_all_chunks::precompute_features_all_chunks proc~precompute_features_all_chunks->proc~check_signal_collective proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks proc~precompute_global_features_all_chunks->proc~check_signal_collective proc~predict_all_chunks mod_predict_all_chunks::predict_all_chunks proc~predict_all_chunks->proc~check_signal_collective proc~predict_mode mod_predict_mode::predict_mode proc~predict_mode->proc~check_signal_collective proc~prediction_statistics_all_chunks mod_feature_map_scaling_all_chunks::prediction_statistics_all_chunks proc~prediction_statistics_all_chunks->proc~check_signal_collective proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~check_signal_collective proc~train_loop_atomic_property mod_train_loop_atomic_property::train_loop_atomic_property proc~train_loop_atomic_property->proc~check_signal_collective proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_loop_short_range->proc~check_signal_collective program~runner RuNNer program~runner->proc~check_signal_collective program~runner->proc~precompute_coulomb_matrix_all_chunks program~runner->proc~precompute_features_all_chunks program~runner->proc~precompute_global_features_all_chunks program~runner->proc~predict_mode proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~feature_scaling_and_prediction_statistics_all_chunks mod_feature_map_scaling_all_chunks::feature_scaling_and_prediction_statistics_all_chunks proc~feature_scaling_and_prediction_statistics_all_chunks->proc~determine_scaling_factor_and_centering_subtrahend_all_chunks~3 proc~feature_scaling_and_prediction_statistics_all_chunks->proc~prediction_statistics_all_chunks proc~train_mode->proc~dataset_statistics_chi_all_chunks proc~train_mode->proc~predict_all_chunks proc~train_mode->proc~train_loop_4g_charges proc~train_mode->proc~train_loop_atomic_property proc~train_mode->proc~train_loop_short_range proc~train_mode->proc~feature_scaling_and_prediction_statistics_all_chunks