Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.
6590 Discussions

pardiso/pardiso_64 solution argument when iparm(5)=1 (overwrite)

Jens_E_
New Contributor I
141 Views

Hi,

I quick question regarding pardiso/pardiso_64: When iparm(5)=1 (0-based indexing) so that the solution is put in the rhs vector b, do I need to allocate any memory for the argument 'x' (the solution vector) ? I would think not, but the documentation is not specific (https://software.intel.com/en-us/node/470284).

I'm using mkl 11.3 update 3.

Best,
Jens

0 Kudos
3 Replies
MariaZh
Employee
141 Views

Hi Jens,

No, there is no need to allocate additional memory in this case, right hand side will be overwritten with solution.

Best regards,
Maria

Jens_E_
New Contributor I
141 Views

Hi Maria,

Ok, thanks! However, according to https://software.intel.com/en-us/node/470298#IPARM6, "The array x is always used." What does that mean?

also, if I just pass a std:vector<double>().data() as the 'b' parameter, pardiso crashes.

Best,
Jens

MariaZh
Employee
141 Views

Hi Jens,

I'm afraid I misled you earlier, sorry for any inconvenience.
The point is x-array is used anyway on solving step of Pardiso (this is what the Note is supposed to be about), so it should be allocated and iparm[5] is just indicates the storage for the solution.
About the crash: can you please provide a short reproducer for your case?

Thank you for your questions!

Best regards,
Maria

Reply