generate_report Subroutine

subroutine generate_report()

Arguments

None

Calls

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

Called by

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

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