- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I've been looking at the large amount of information which is output from ifort when using the -opt-report flag, and its not obvious to me what the output means.
Additionally, Im not sure how to interpret the vec-report information, as the line numbers given dont correspond to loops.
Does anyone know where I get get some information on how to interpret these reports?
Many thanks.
Additionally, Im not sure how to interpret the vec-report information, as the line numbers given dont correspond to loops.
Does anyone know where I get get some information on how to interpret these reports?
Many thanks.
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There are discussions in the Intel Fortran Users Guide locatable via the index:
Intel Fortran Compiler Users and Reference Guides > Optimizing Applications > Evaluating Performance > Using Compiler Reports
There are sections for IPO, PGO, HLO, HPO, Parallelism, SWP Vectorization, and OpenMP reports.
At least with the 11.1 Release the vectorizatoin diagnostics provided include line numbers corresponding to loops.
Given the following example:
[plain]subroutine foo(y) implicit none integer :: i real :: y(1000) do i=2,1000 y (i) = y (i-1)+1 end do end subroutine foo subroutine bar(y) implicit none integer :: i real :: y(1000) do i=2,1000 y (i) = y (1)+i end do end subroutine bar[/plain]
When compiled as:
$ ifort -V -xSSSE3 -vec-report3 -c u68442.f90
Intel Fortran Intel 64 Compiler Professional for applications running on Intel 64, Version 11.1 Build 20090827 Package ID: l_cprof_p_11.1.056
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.
Intel Fortran 11.1-2582
u68442.f90(5): (col. 3) remark: loop was not vectorized: existence of vector dependence.
u68442.f90(6): (col. 6) remark: vector dependence: assumed FLOW dependence between y line 6 and y line 6.
u68442.f90(14): (col. 3) remark: LOOP WAS VECTORIZED.
The line numbers appear in the parenthesis after the file name, lines 5, 6, and 14 in the above messages. The column location corresponding to line's indentation from the left margin appears in the "(col. n)" text.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Kevin Davis (Intel)
There are discussions in the Intel Fortran Users Guide locatable via the index:
Intel Fortran Compiler Users and Reference Guides > Optimizing Applications > Evaluating Performance > Using Compiler Reports
There are sections for IPO, PGO, HLO, HPO, Parallelism, SWP Vectorization, and OpenMP reports.
I'll try and plough through all the information but I can see it will take a while to read, longer to absorb and much experience to become an expert at outstanding the reams of output from -opt-report for any substantial scientific Fortran code. I look forward to giving it all a go but all tips are most welcome!
Michael
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page