I have a problem (Access violation reading) when I use Pardiso in OOC mode and I try to do phases 1 to 3 at the same time (phase parameter = 13). But when I do phase 3 separately, it works.
Here is a summary of my code :
iparm = 1; /* No solver default */ iparm = 2; /* Fill-in reordering from METIS */ iparm = 2; /*In-Core or Out-Of-Core */ maxfct = 1; /* Maximum number of numerical factorizations. */ mnum = 1; /* Which factorization to use. */ msglvl = 1; /* Print statistical information to the screen */ error = 0; /* Initialize error flag */ phase = 12; PARDISO (_pt, &maxfct, &mnum, &mtype, &phase, &n, a, ia, ja, &idum, &nrhs, iparm, &msglvl, B, X, &error); phase = 33; PARDISO (_pt, &maxfct, &mnum, &mtype, &phase, &n, a, ia, ja, &idum, &nrhs, iparm, &msglvl, B, X, &error);
This code works fine in all cases.
But if I want to do phases 1-3 in a single call (phase=13), I get a "Access violation reading" in Pardiso.
This occurs only on large scale matrix when OOC is really used (files write/read) and if I set iparm=0, it works fine.