generate_report Subroutine

subroutine generate_report()

Arguments

None

Calls

proc~~generate_report~~CallsGraph proc~generate_report generate_report interface~mapl_am_i_root MAPL_Am_I_Root proc~generate_report->interface~mapl_am_i_root none~add_column MultiColumn%add_column proc~generate_report->none~add_column none~generate_report ProfileReporter%generate_report proc~generate_report->none~generate_report 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~47 TextColumnVector%push_back none~add_column->none~push_back~47 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~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~7 MultiColumn%get_rows none~generate_report_profiler->none~get_rows~7 none~capacity~277 TextColumnVector%capacity none~push_back~47->none~capacity~277 none~resize~94 TextColumnVector%resize none~push_back~47->none~resize~94 none~get_header~5->get_num_rows_header none~get_header~5->none~get_num_rows_separator none~get_header~5->none~get_width get_header get_header none~get_header~5->get_header none~at~210 TextColumnVector%at none~get_header~5->none~at~210 none~center TextColumn%center none~get_header~5->none~center none~get_separator TextColumn%get_separator none~get_header~5->none~get_separator none~get_rows~7->none~get_width get_num_nodes get_num_nodes none~get_rows~7->get_num_nodes get_rows get_rows none~get_rows~7->get_rows none~get_rows~7->none~at~210 none~resize_32~45 TextColumnVector%resize_32 none~resize~94->none~resize_32~45

Called by

proc~~generate_report~~CalledByGraph proc~generate_report generate_report proc~main main proc~main->proc~generate_report program~regrid_util Regrid_Util program~regrid_util->proc~main

Source Code

    subroutine generate_report()

         character(:), allocatable :: report_lines(:)
         integer :: i
         character(1) :: empty(0)

         reporter = ProfileReporter(empty)
         call reporter%add_column(NameColumn(20))
         call reporter%add_column(FormattedTextColumn('Inclusive','(f9.6)', 9, InclusiveColumn('MEAN')))
         call reporter%add_column(FormattedTextColumn('% Incl','(f6.2)', 6, PercentageColumn(InclusiveColumn('MEAN'),'MAX')))
         call reporter%add_column(FormattedTextColumn('Exclusive','(f9.6)', 9, ExclusiveColumn('MEAN')))
         call reporter%add_column(FormattedTextColumn('% Excl','(f6.2)', 6, PercentageColumn(ExclusiveColumn('MEAN'))))
         call reporter%add_column(FormattedTextColumn(' Max Excl)','(f9.6)', 9, ExclusiveColumn('MAX')))
         call reporter%add_column(FormattedTextColumn(' Min Excl)','(f9.6)', 9, ExclusiveColumn('MIN')))
         call reporter%add_column(FormattedTextColumn('Max PE)','(1x,i5.5,1x)', 7, ExclusiveColumn('MAX_PE')))
         call reporter%add_column(FormattedTextColumn('Min PE)','(1x,i5.5,1x)', 7, ExclusiveColumn('MIN_PE')))
        report_lines = reporter%generate_report(t_prof)
         if (mapl_am_I_root()) then
            write(*,'(a)')'Final profile'
            write(*,'(a)')'============='
            do i = 1, size(report_lines)
               write(*,'(a)') report_lines(i)
            end do
            write(*,'(a)') ''
         end if
    end subroutine generate_report