- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi everyone,
I'm using intel visual fortran composer xe 2011 on MVS 2012. I recently start having the error 157 when calling the pardiso solver.
I keep receiving the following message : "forrtl: severe (157): Program Exception - access violation" followed by the following lines:
Image PC Routine Line Source
First.exe 01614654 Unknown Unknown Unknown
First.exe 015C8658 Unknown Unknown Unknown
First.exe 015A3EBF Unknown Unknown Unknown
First.exe 0159F94A Unknown Unknown Unknown
First.exe 0159E9EA Unknown Unknown Unknown
First.exe 01492B25 _MD_NR_mp_LINEAR_ 1386 MOD_NR.f90
First.exe 0144475B _MD_NR_mp_FRAC_NR 241 MOD_NR.f90
First.exe 014E4324 _MAIN__ 196 MAIN-2F-NR-DG.f90
First.exe 014E4324 _MAIN__ 196 MAIN-2F-NR-DG.f90
First.exe 0270B218 Unknown Unknown Unknown
04DB8350 Unknown Unknown Unknown
First.exe 026F8F94 Unknown Unknown Unknown
Please note that "First.exe" is my executable file name, the Mod_NR and MAIN-2F-NR-DG are 2 fortran files in my program. The pardiso solver is called withing the MOD_NR file.
Any help is appreciated.
Thanks,
Ali
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
All the symptoms point to errors (wrong type, wrong sequence, missing items) in the argument list passed to Pardiso. Since the argument of Pardiso is rather complicated, it will not be possible to suggest what to do unless you show the source code of the calling subprogram.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks mecej4,
Here's is the subroutine where the pardiso is called:
!-------
!------
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The line referred to in #1 is line 1386 of MOD_NR.f90. The listing in #3 neither has that name nor does it have that many lines. Therefore, I cannot make sense out of your last post.
Please what you are attempting to solve, and where the input matrix has its entries defined.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The code is huge, more than 50,000 lines. Below I copied the MOD_NR module where all the input for the pardiso are there.
Please note that line 1386 refers to the following (called from the pasted above subroutine) marked in bold-italic:
.
.
.
phase = 11
if(any(AXout.ne.AXout).or.any(AIout.ne.AIout).or.any(AJout.ne.AJout).or.any(Bbfr.ne.Bbfr))pause"problem herE"
if(any(AIout.eq.0).or.any(ajout.eq.0))pause"problem herE**"
This is line 1386 >>> CALL pardiso (pt2, maxfct, mnum, mtype, phase, n, AXout, AIout, AJout,&
idum, nrhs, iparm2, msglvl, ddum, ddum, error)
--------------------------------------------------------------------------------------------------
And here a copy of the whole module, hope this could be useful
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sorry, it is not possible to proceed without either (i) a self-contained short program that makes the same kind of Pardiso calls as your large application, with the property that finding the error in this "reproducer" will help you to fix the large application, or (ii) the entire sources of your application, zipped together with any data files needed and instructions on how to compile link and run in order to reproduce the run time error.
Your module source in #5 has IMPLICIT NONE, yet contains a number of variables whose types and array dimensions are not declared, such as INT_UP_Q, INT_UP_SAT, INT_UP_CELL and CZI. Furthermore, the main matrix associated with the call to Pardiso is not defined in the module; presumably, it is defined in another subprogram that you have not shown, which USEs module MOD_NR. If, as is most likely, the cause of the access violation is errors in one or more of the arguments passed to Pardiso, we need to know the sizes and values of the actual arguments.
It is unreasonable to try to find the error by visual inspection of part of the program, when the actual code is so big and variables with global scope are used.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ali,
The error code 157 may be related to the link line of your application. If you are using ilp64, please also include /4I8.
--Vipin

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page