- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
first, compile and link with -g -traceback and then run. It will tell you where in the source code this failure occurs.
Next, try compiling and linking with -gen-interfaces -warn interfaces
that might help indentify if you've used the subroutine in the context of a function call.
ron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
first, compile and link with -g -traceback and then run. It will tell you where in the source code this failure occurs.
Next, try compiling and linking with -gen-interfaces -warn interfaces
that might help indentify if you've used the subroutine in the context of a function call.
ron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Points well taken.
Getting started: For the next major version of the compiler we will revisit the whole 'startup experience' and documentation to make it easier to find the most relevant information. Yes, a list of the 'top 10' or 20 compiler options for new users would be a valuable addition to this getting started document, taken from the perspective of a user who is familiar with other compilers but new to Intel Fortran.
Slow compilation: We have seen issues in the past in 2 major areas: complex nesting of interdependent module USE, and secondly in codes with large data initialization (block data or just a huge number of compile-time initializations).
And when you say 'optimization turned off' you mean you explicitly set -O0, correct? Because without a -Ox option the default is -O2 which is quite aggressive for this compiler.
ron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Points well taken.
Getting started: For the next major version of the compiler we will revisit the whole 'startup experience' and documentation to make it easier to find the most relevant information. Yes, a list of the 'top 10' or 20 compiler options for new users would be a valuable addition to this getting started document, taken from the perspective of a user who is familiar with other compilers but new to Intel Fortran.
Slow compilation: We have seen issues in the past in 2 major areas: complex nesting of interdependent module USE, and secondly in codes with large data initialization (block data or just a huge number of compile-time initializations).
And when you say 'optimization turned off' you mean you explicitly set -O0, correct? Because without a -Ox option the default is -O2 which is quite aggressive for this compiler.
ron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And when you say 'optimization turned off' you mean you explicitly set -O0, correct? Because without a -Ox option the default is -O2 which is quite aggressive for this compiler.
ron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
-g does imply -O0. From the -g documentation:
"This option turns off O2 and makes O0 (Linux and Mac OS X) or Od (Windows) the default unless O2 (or another O option) is explicitly specified in the same command line."
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi David,
I am running to the very same problem with Zeus. How did you end up ixing the roe_$ASL undefined variable problem. I looked into roe.f and it seems that asl is defined fine. As a result I am not sure what is going on.
Thank you,
Anand
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
i have the same error. how did you manage to fix it?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
FIX #1
------------
There is an unused and uninitialised variable in subroutine ROE call asl that is causing the problem. Most compilers don't fret over such uninitialised variables; ifort seems to.
The easiest fix is just to delete the statement
al = sqrt ( asl )
and also eliminate both al and asl from the variable declaration list in the real*8 statement above. I guess these are variables Ryu and Jones required at one time, but fell from use and ended up as the vesitge they are.
You may find similar types of errors crop up in *gp riemann; their fix is similar.
FIX #2:
---------------
As an alternative to David's fix outlined above, one could also do the following:
Where the variable is declared as real*8 just tell the fortran compiler to save the variable from one call to the next, with:
real*8 save :: asl, al. ... , [any other variables in this list in subroutine roe]
A similar error crops up with variables bperpl, bperpm and bperpr in subroutie simpler, the fix is the same, to save the variables.
Hope this helps.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page