finalize Subroutine

public subroutine finalize(unusable, rc)

Uses

  • proc~~finalize~12~~UsesGraph proc~finalize~12 ExtData_DriverGridComp%finalize module~mapl_errorhandlingmod mapl_ErrorHandlingMod proc~finalize~12->module~mapl_errorhandlingmod module~mapl_keywordenforcermod mapl_KeywordEnforcerMod proc~finalize~12->module~mapl_keywordenforcermod module~mapl_errorhandling mapl_ErrorHandling module~mapl_errorhandlingmod->module~mapl_errorhandling module~mapl_keywordenforcer mapl_KeywordEnforcer module~mapl_keywordenforcermod->module~mapl_keywordenforcer module~mapl_throwmod MAPL_ThrowMod module~mapl_errorhandling->module~mapl_throwmod mpi mpi module~mapl_errorhandling->mpi

Type Bound

ExtData_DriverGridComp

Arguments

Type IntentOptional Attributes Name
class(KeywordEnforcer), intent(in), optional :: unusable
integer, intent(out), optional :: rc

Calls

proc~~finalize~12~~CallsGraph proc~finalize~12 ExtData_DriverGridComp%finalize proc~get_global_memory_profiler get_global_memory_profiler proc~finalize~12->proc~get_global_memory_profiler proc~get_global_time_profiler get_global_time_profiler proc~finalize~12->proc~get_global_time_profiler proc~mapl_return MAPL_Return proc~finalize~12->proc~mapl_return proc~mapl_verify MAPL_Verify proc~finalize~12->proc~mapl_verify proc~report_global_profiler report_global_profiler proc~finalize~12->proc~report_global_profiler at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception proc~mapl_verify->proc~mapl_throw_exception proc~report_global_profiler->proc~get_global_memory_profiler proc~report_global_profiler->proc~get_global_time_profiler proc~report_global_profiler->proc~mapl_return proc~report_global_profiler->proc~mapl_verify mpi_barrier mpi_barrier proc~report_global_profiler->mpi_barrier mpi_comm_rank mpi_comm_rank proc~report_global_profiler->mpi_comm_rank mpi_comm_size mpi_comm_size proc~report_global_profiler->mpi_comm_size none~add_column MultiColumn%add_column proc~report_global_profiler->none~add_column none~generate_report ProfileReporter%generate_report proc~report_global_profiler->none~generate_report none~get_num_meters BaseProfiler%get_num_meters proc~report_global_profiler->none~get_num_meters none~info~57 Logger%info proc~report_global_profiler->none~info~57 get_num_rows_header get_num_rows_header none~add_column->get_num_rows_header none~get_num_rows_separator TextColumn%get_num_rows_separator none~add_column->none~get_num_rows_separator none~get_width TextColumn%get_width none~add_column->none~get_width none~push_back TextColumnVector%push_back none~add_column->none~push_back none~set_width TextColumn%set_width none~add_column->none~set_width none~generate_report_profiler ProfileReporter%generate_report_profiler none~generate_report->none~generate_report_profiler none~get_num_nodes~2 MeterNode%get_num_nodes none~get_num_meters->none~get_num_nodes~2 none~generate_report_profiler->none~get_width none~get_header~5 MultiColumn%get_header none~generate_report_profiler->none~get_header~5 none~get_root_node BaseProfiler%get_root_node none~generate_report_profiler->none~get_root_node none~get_rows~6 MultiColumn%get_rows none~generate_report_profiler->none~get_rows~6 get_num_nodes get_num_nodes none~get_num_nodes~2->get_num_nodes none~begin~118 MeterNodeVector%begin none~get_num_nodes~2->none~begin~118 none~get~81 MeterNodeVectorIterator%get none~get_num_nodes~2->none~get~81 none~next~68 MeterNodeVectorIterator%next none~get_num_nodes~2->none~next~68 none~capacity TextColumnVector%capacity none~push_back->none~capacity none~resize~2 TextColumnVector%resize none~push_back->none~resize~2

Called by

proc~~finalize~12~~CalledByGraph proc~finalize~12 ExtData_DriverGridComp%finalize proc~run~13 ExtDataDriver%run proc~run~13->proc~finalize~12 program~extdata_driver ExtData_Driver program~extdata_driver->proc~run~13

Source Code

   subroutine finalize(unusable, rc)
      use mapl_KeywordEnforcerMod
      use mapl_ErrorHandlingMod
      class(KeywordEnforcer), optional, intent(in) :: unusable
      integer, optional, intent(out) :: rc

      class(DistributedProfiler), pointer :: t_p, m_p

      integer :: status

      t_p => get_global_time_profiler()
      call t_p%stop(_RC)
      m_p => get_global_memory_profiler()
      call m_p%stop(_RC)

      call report_global_profiler()

      _RETURN(_SUCCESS)
      _UNUSED_DUMMY(unusable)

   end subroutine finalize