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

issue in running multiple pardiso concurrently.

miaodi1987
Beginner
417 Views

Hi, 

 

For a project, we woule like to solve multiple independent linear system concurrently. The structure of the code is like this:

 

    omp_set_max_active_levels( 2 );
#pragma omp parallel num_threads( 2 )
{
   mkl_set_num_threads_local( 10 );
   op A = assemble();
   auto pardiso_solver = createSolver(A);
   pardiso_solver->solve(rhs, x);
}

 

When the outer num_threads is set to 1, everything works ok. However, when I increase it to 2. I got error code -2 in solve stage. In my test, the operator A is nothing but a 3x3 matrix:

/*
A = 1 2 3
       0 4 5
       0 0 6
*/
 
my solver parameters are set as:

 

 _iparm[1] = 3;
 _iparm[7] = 1; 
 _iparm[34] = 0; 

 

 Could I know what could be the cause of the problem?

 

 

0 Kudos
1 Reply
Ruqiu_C_Intel
Moderator
347 Views

Hello miaodi,


Thank you for posting here.

Could you tell us your oneMKL version, OS version and hardware platform? As well as providing us a simple reproducer for the issue.


Regards,

Ruqiu


0 Kudos
Reply