Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29238 Discussions

list of complied routines and function

Simon_U_
Beginner
1,162 Views
Hi sounds like a simple question: What option do I have to use, if I want the compiler to tell me the names of all compiled routines and functions. -watch source only shows the compiled program files I could not find in the compiler manual. Thanks Simon
0 Kudos
6 Replies
Kevin_D_Intel
Employee
1,162 Views

The -list and -show may generate more information than you are interested in but there is a SUBPROGRAMS/COMMON BLOCKS section produced for the compiled source file that contains: subroutines, functions, modules, and program units.

Hopefully that might help.

0 Kudos
Simon_U_
Beginner
1,162 Views
Thanks for hinting me at the options -list and -show I still have trouble applying them 1.) mpiifort -r8 -list -show=map -c filename.f90 ifort: command line warning #10158: ignoring option '-show'; argument must be separate 2.) mpiifort -r8 -list -show=map -c filename.f90 ifort: command line warning #10158: ignoring option '-show'; argument must be separate ifort -g -r8 -list =map -c filename.f90 -I/sw/rhel6-x64/intel/impi/5.1.0.038/compilers_and_libraries_2016.0.079/linux/mpi/intel64/include -I/sw/rhel6-x64/intel/impi/5.1.0.038/compilers_and_libraries_2016.0.079/linux/mpi/intel64/include 3.) mpiifort -r8 -list -show= map -c filename.f90 ifort: command line warning #10158: ignoring option '-show'; argument must be separate ifort: error #10236: File not found: 'map' In the three examples spaces before and after the = sign occur or don't. Thanks Simon
0 Kudos
Kevin_D_Intel
Employee
1,162 Views

Ok, there are some issues here that I was not aware of so thank you for bringing those to our attention.

As you noted, -show does not function with mpiifort at all. Another issue exists when using ifort where -show does not honor the equal sign separator, so either the option is not behaving as advertised or the documentation is incorrect. It does function with ifort without the equal sign separator.

Hopefully you can use -list only with mpiifort for now to help find the information you were seeking.

I will notify our Documentation and/or Development teams about the issues and update this post with internal tracking id soon.

(Internal tracking id: DPD200374890 - Correct -show documentation to remove equal sign connector)

0 Kudos
jimdempseyatthecove
Honored Contributor III
1,162 Views

Try enquoting:

mpiifort -r8 -list -"show=map" -c filename.f90

Or some variation on this.

Jim Dempsey

0 Kudos
Kevin_D_Intel
Employee
1,162 Views

First, the ifort -show option does not use the equal sign connector as documented so we will correct our documentation in a future release.

Second, I discovered the issue with -show stems from mpif90 (et. al.) actually having its own -show option; thus, the troubles we experienced relate to that.

$ mpiifort -help | grep show
   -show           show command lines without real calling

Some good news is that I found a way around this using the mpif90 (or mpiifort) -fc= or -f90= option. I found it works to provide the ifort options within the expected string argument as follows:

mpiifort -fc="ifort -list -show nooptions" hello_mpi.F90

I don't know what the general consensus would be for using that, and whether it merits modifying either the mpif90 (et. al.)  wrappers or ifort driver to deal with the option name conflict. I'm inquiring internally but if you have thoughts let me know.

0 Kudos
Kevin_D_Intel
Employee
1,162 Views

The advice I received is the usage of the MPI compiler wrapper options (-{cc,cxx,fc,f77,f90}=<compiler> ) is the recommended method for changing the underlying compiler, providing extra options, and (as in this case) avoiding option overlap with an MPI compiler wrapper.

0 Kudos
Reply