Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

pardiso out of memory (-2) in phase 33

may_ka
Beginner
355 Views

Hi,

pardiso stops with error message -2 in phase 33 when increasing the number of rhs from 600 to 700. 600 rhs runs fine with a memory use  of 146.2GB ("RES") reported by "top". The system has 256GB of RAM, so there is still +40% left. What is the issue when increasing #rhs by 100??

Thanks

0 Kudos
5 Replies
Gennady_F_Intel
Moderator
355 Views

This may happen because of Pardiso consumes too many memory in the case of rhs.  How many threads do you use? what is the problem size?  Please check what iparm[17] returns in the case of 500 and 600 threads for example.

0 Kudos
may_ka
Beginner
355 Views

Hi

first it is 700 to 800 rhs, not 500 to 600 ............. my fault.

iparm with 700 rhs is:

1,2,36,0,0,0,0,0,0,0,0,0,0,0,5321589,3979573,477759815,126792401,612333,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,5321589,4845387,877558,0

iparm with 800 rhs is:

1,2,36,0,0,0,0,0,0,0,0,0,0,0,5321589,3979573,1727119,126792401,612333,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,5321589,4845387,877558,0

so iparm[17] for 700 is 477,759,815, where iparm[17] for 800 is 1,727,119

That all doesn't make sense to me especially since the manual states that iparm[17] is calulated during phase 1.

Further if that is the memory usage in kbyte then 700 rhs was at 477,759,815*1000/10^9 GByte which is 477.75 GB. But the computer has only 256GB and I am 100% certain that it never went into swap.

The factor contains 126,792,401 non-zero elements and has a row/column dimension of 2,421,403. I need to solve for ~50,000 rhs, which I supply in chunks of up to 700 rhs. Because from what we discussed here

I want to keep the number of RHSs as many as possible.

CPU is Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz, so effectively 36 cores and threads.

Note that I don't store a rhs matrix of 2.4Miox50,000. The rhs are generated by a pre-mult step with a sparse rectangular matrix before they go to the solver.

Cheers

 

 

0 Kudos
Kirill_V_Intel
Employee
355 Views

Hello,

Can you specify the Intel MKL version which you are using? I believe we have improved the memory consumption for the multi-threaded execution of the Intel MKL Pardiso in MKL 2019u2.

 

Thanks,
Kirill

 

0 Kudos
may_ka
Beginner
355 Views

Hi,

the posted results were obtained with 17.08. I'll checkout 19.02.

0 Kudos
Gennady_F_Intel
Moderator
355 Views

some small correction - actually the fix of the problem will be available into the next ( nearest) version MKL 2019 update 3. the current ( latest) available update 2 doesn't contains such kind of fixes... 

0 Kudos
Reply