- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
I am trying to solve a sparse symmetric indefinite real matrix using PARDISO. The matrix is of size n=55,650,566 with 164,833,721 nonzero entries. Everything is good when the number of enable threads is equal or smaller than 17. But when I set the number of threads to be 18, error code -2 generated. And the error message shows as follows:
*** Error in PARDISO ( insufficient_memory) error_num= 2
*** Error in PARDISO memory allocation: BEFORE_REORDERING, allocation of -8299199 bytes failed
total memory wanted here: -6125334 kbyte
Error also happens when the number of threads is bigger than 18. The machine I use has 1031GB RAM and 262GB swap space, so the insufficient memory error seems unreasonable. And the negative number of bytes in error messages is also weird. I wonder why PARDISO goes wrong under such conditions.
More information about my environment: The MKL version is 11.0.2. CPU: Intel Xeon 120 X 1200MHz. Memory: 1031GB RAM and 262GB swap. OS: RedHat Enterprise Linux 7.1
Thanks
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I updated my MKL to version 11.2.3. But the error message still occurs and is very similar to the original error message
Intel(R) Math Kernel Library Version 11.2.3 Product Build 20150409 for Intel(R) 64 architecture applications
*** Error in PARDISO ( insufficient_memory) error_num= 2
*** Error in PARDISO memory allocation: BEFORE_REORDERING, allocation of -8299199 bytes failed
total memory wanted here: -6125208 kbyte
Regards,
Gisiu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Which mkl libs you link in your pardiso sample? Could you provide linkline?
Thanks,
Alex
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And the negative number of bytes in error messages is also weird. I wonder why PARDISO goes wrong under such conditions.These are signs of INTEGER*4 having been used when INTEGER*8 was needed because of the problem size being large. This error could have happened in your code because you used INTEGER*4, or in Pardiso routines because you called the LP64 library instead of the ILP64 library, as Alexander hinted.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Alexander and mecej4,
Thanks for your help. I follow the instructions in this page: https://software.intel.com/en-us/articles/using-intel-mkl-in-your-python-programs ; to call "libmkl_rt.so" in my Python program. I don't know whether the problem is caused by this method.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Gisiu,
Beside libmkl_rt.so, do you have other environment set?
Generally, link mkl_rt.so , is Intel LP64 interface and Intel OpenMP threading RTL.
So besides libmkl_rt.so you may need to set the interface layer at run time, use the mkl_set_interface_layerfunction or the
MKL_INTERFACE_LAYERenvironment variable.
for example,
MKL_INTERFACE_LAYER=MKL_INTERFACE_ILP64.
Please let us know if it work.
Regards,
Ying
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ying,
Thanks for your reply. I call mkl.mkl_set_interface_layer(byref(c_types(1))) in my Python program and error is still invoked when the number of the thread set higher than 17. But the error message is different from before:
*** Error in PARDISO ( insufficient_memory) error_num= 0
PARDISO Internationalization error. Message 0 is unknown.
total memory wanted here: 11 kbyte
ERROR during symbolic factorization: -2
By the way, PARDISO runs well if I call it in C program. And also, given smaller matrix (n about 400,000 and number of nonzero 1,000,000), my Python script can run without error with any number of threads.
Regards,
Gisiu

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