<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322487#M32196</link>
    <description>&lt;P&gt;I am trying to compile this example:&amp;nbsp; cl_solver_sym_sp_0_based_c.c&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Located in: /oneapi/2021.4/oneapi/mkl/latest/examples/examples_cluster_c.tgz&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the error message:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;uxxxxx@login-2:~/solver$ mpiicc cl_solver_sym_sp_0_based_c.c&lt;BR /&gt;/home/uxxxxx/tmp/icckSqCzs.o: In function `main':&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x2cf): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x3b2): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x537): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x5e6): undefined reference to `mkl_sparse_s_create_csr'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x62f): undefined reference to `mkl_sparse_s_mv'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x647): undefined reference to `mkl_sparse_destroy'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x673): undefined reference to `mkl_sparse_destroy'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x805): undefined reference to `cluster_sparse_solver'&lt;/P&gt;</description>
    <pubDate>Sat, 16 Oct 2021 04:08:50 GMT</pubDate>
    <dc:creator>segmentation_fault</dc:creator>
    <dc:date>2021-10-16T04:08:50Z</dc:date>
    <item>
      <title>undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322487#M32196</link>
      <description>&lt;P&gt;I am trying to compile this example:&amp;nbsp; cl_solver_sym_sp_0_based_c.c&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Located in: /oneapi/2021.4/oneapi/mkl/latest/examples/examples_cluster_c.tgz&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is the error message:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;uxxxxx@login-2:~/solver$ mpiicc cl_solver_sym_sp_0_based_c.c&lt;BR /&gt;/home/uxxxxx/tmp/icckSqCzs.o: In function `main':&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x2cf): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x3b2): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x537): undefined reference to `cluster_sparse_solver'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x5e6): undefined reference to `mkl_sparse_s_create_csr'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x62f): undefined reference to `mkl_sparse_s_mv'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x647): undefined reference to `mkl_sparse_destroy'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x673): undefined reference to `mkl_sparse_destroy'&lt;BR /&gt;cl_solver_sym_sp_0_based_c.c:(.text+0x805): undefined reference to `cluster_sparse_solver'&lt;/P&gt;</description>
      <pubDate>Sat, 16 Oct 2021 04:08:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322487#M32196</guid>
      <dc:creator>segmentation_fault</dc:creator>
      <dc:date>2021-10-16T04:08:50Z</dc:date>
    </item>
    <item>
      <title>Re: undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322490#M32197</link>
      <description>&lt;P&gt;please check what the &lt;A href="https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl/link-line-advisor.html" target="_self"&gt;MKL Linker Adviser&lt;/A&gt; suggests to compile/link&amp;nbsp;&lt;SPAN&gt;for this case. You might specify the parameters in the drop-down lists and use these compiler and link lines in your building scripts.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Oct 2021 04:41:40 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322490#M32197</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2021-10-16T04:41:40Z</dc:date>
    </item>
    <item>
      <title>Re: undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322531#M32198</link>
      <description>&lt;P&gt;Thanks, got it to compile with this command per the link line advisor. Interesting it says -mkl=parralel is deprecated, though that is what the link advisor suggested.. Unfortunately, I am getting segmentation fault when trying to run it.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="none"&gt;me@login-2:~/solver$ mpiicc -DMKL_ILP64 -mkl=parallel -L${MKLROOT}/lib/intel64 -lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl cl_solver_sym_sp_0_based_c.c
icc: command line remark #10412: option '-mkl=parallel' is deprecated and will be removed in a future release. Please use the replacement option '-qmkl=parallel'
icc: warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance&lt;/LI-CODE&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Oct 2021 15:09:24 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322531#M32198</guid>
      <dc:creator>segmentation_fault</dc:creator>
      <dc:date>2021-10-16T15:09:24Z</dc:date>
    </item>
    <item>
      <title>Re: undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322569#M32200</link>
      <description>&lt;P&gt;Hi!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This likely means that you're still linking incorrectly. I'm afraid that recommendation with -mkl-parallel is not working as expected for this choice (which would mean that there is a bug in the recommendation by the link line advisor).&lt;/P&gt;
&lt;P&gt;Just a quick check:&lt;/P&gt;
&lt;P&gt;if we do ldd on the executable with your link line, I see&lt;/P&gt;
&lt;P&gt;linux-vdso.so.1 =&amp;gt; ...&lt;BR /&gt;&lt;STRONG&gt;libmkl_intel_lp64.so&lt;/STRONG&gt;.1 =&amp;gt; ...&lt;BR /&gt;libmkl_intel_thread.so.1 =&amp;gt; ...&lt;BR /&gt;libmkl_core.so.1 =&amp;gt; ...&lt;BR /&gt;libiomp5.so =&amp;gt; ...&lt;BR /&gt;libmkl_blacs_intelmpi_ilp64.so.1 =&amp;gt; ...&lt;BR /&gt;libpthread.so.0 =&amp;gt; ...&lt;BR /&gt;libm.so.6 =&amp;gt; ...&lt;BR /&gt;libdl.so.2 =&amp;gt; ...&lt;BR /&gt;libmpifort.so.12 =&amp;gt; ...&lt;BR /&gt;libmpi.so.12 =&amp;gt; ...&lt;BR /&gt;...&lt;/P&gt;
&lt;P&gt;So it links with lp64 interface.&lt;/P&gt;
&lt;P&gt;Please tick the box "&lt;SPAN&gt;Link with Intel® oneMKL libraries explicitly&lt;/SPAN&gt;" and use explicit link line.&lt;/P&gt;
&lt;P&gt;That's what I get there for the link line (assuming you want dynamic linking):&lt;/P&gt;
&lt;P&gt;-L${MKLROOT}/lib/intel64 -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl&lt;/P&gt;
&lt;P&gt;Notice &lt;STRONG&gt;mkl_intel_ilp64&lt;/STRONG&gt;!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best,&lt;BR /&gt;Kirill&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Oct 2021 22:51:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322569#M32200</guid>
      <dc:creator>Kirill_V_Intel</dc:creator>
      <dc:date>2021-10-16T22:51:58Z</dc:date>
    </item>
    <item>
      <title>Re: undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322830#M32207</link>
      <description>&lt;P&gt;Thanks, that worked! I then was able to run the example on two cpus by using:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;export OMP_NUM_THREADS=1&lt;/P&gt;
&lt;P&gt;mpirun -np 2 ./a.out&lt;/P&gt;</description>
      <pubDate>Mon, 18 Oct 2021 13:18:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322830#M32207</guid>
      <dc:creator>segmentation_fault</dc:creator>
      <dc:date>2021-10-18T13:18:33Z</dc:date>
    </item>
    <item>
      <title>Re:undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322872#M32211</link>
      <description>&lt;P&gt;This issue has been resolved and we will no longer respond to this thread.&amp;nbsp;If you require additional assistance from Intel, please start a new thread.&amp;nbsp;Any further interaction in this thread will be considered community only.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 18 Oct 2021 16:00:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1322872#M32211</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2021-10-18T16:00:41Z</dc:date>
    </item>
    <item>
      <title>Re: undefined reference to `cluster_sparse_solver' with 2021 mpiicc compiler</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1323146#M32218</link>
      <description>&lt;P&gt;If anyone is interested, I modified the example to be able to read in the matrix (a) , ia, ja and b data from text files. Took me nearly two days to figure it out after battling many "segmentation faults" :-)..&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="cpp"&gt;#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;stdlib.h&amp;gt;
#include &amp;lt;math.h&amp;gt;
#include "mpi.h"
#include "mkl.h"
#include "mkl_cluster_sparse_solver.h"

int main (void)
{
    /* Matrix data. */

//ndim = wc -l a.txt
//n = wc -l b.txt

// change in two places the zero based indexing to fortran: SPARSE_INDEX_BASE_ONE,  iparm[34] =  0

    MKL_INT n = 1219161;
    MKL_INT ndim = 46687911;

    MKL_INT ia[n+1];
    MKL_INT *ja = calloc ( ndim, sizeof ( MKL_INT ) );

    double *a = calloc ( ndim, sizeof ( double ) );

    MKL_INT mtype = -2;  /* set matrix type to "real symmetric indefinite matrix" */
    MKL_INT nrhs  =  1;  /* number of right hand sides. */

    double res, res0; /* RHS and solution vectors. */
    double *b = calloc ( n, sizeof ( double ) );
    double *x = calloc ( n, sizeof ( double ) );
    double *bs = calloc ( n, sizeof ( double ) );

//   printf ( "got here" );   return 1;

    /* Internal solver memory pointer pt
     *       32-bit:      int pt[64] or void *pt[64];
     *       64-bit: long int pt[64] or void *pt[64]; */
    void *pt[64] = { 0 };


    /* Cluster Sparse Solver control parameters. */
    MKL_INT iparm[64] = { 0 };
    MKL_INT maxfct, mnum, phase, msglvl, error;

    /* Auxiliary variables. */
    double   ddum; /* float dummy   */
    MKL_INT idum; /* Integer dummy. */
    MKL_INT i, j;
    int     mpi_stat = 0;
    int     argc = 0;
    int     comm, rank;
    char*   uplo;
    char**  argv;

/* -------------------------------------------------------------------- */
/* .. Init MPI.                                                         */
/* -------------------------------------------------------------------- */
    mpi_stat = MPI_Init( &amp;amp;argc, &amp;amp;argv );
    mpi_stat = MPI_Comm_rank( MPI_COMM_WORLD, &amp;amp;rank );
    comm =  MPI_Comm_c2f( MPI_COMM_WORLD );
 
int row=0;
FILE *myfile;
int value;
double double_value;
  char line[80];

if ( rank == 0 ) {
  myfile = fopen ( "ia.txt", "r" );

while( !feof(myfile) &amp;amp;&amp;amp; row &amp;lt; n + 1) {
    fgets( line, sizeof(line), myfile);
    sscanf( line, "%i",  &amp;amp;value );
   /* writing content to stdout */ 
//  printf ("%i\n",  value );
  ia[row]= value;
    row++;
}
fclose(myfile);

myfile = fopen ( "ja.txt", "r" );
row=0;
while( !feof(myfile) &amp;amp;&amp;amp; row &amp;lt; ndim) {
    fgets( line, sizeof(line), myfile);
    sscanf( line, "%i",  &amp;amp;value );
   /* writing content to stdout */ 
//  printf ("%i\n",  value );
  ja[row]= value;
    row++;
//   if ( row %100000 ==0 ) { printf ( "Processed %i\n", row ); }

}

fclose(myfile);

myfile = fopen ( "a.txt", "r" );
row=0;
while( !feof(myfile) &amp;amp;&amp;amp; row &amp;lt; ndim) {
    a[row] = 0.0;
    fgets( line, sizeof(line), myfile);
    sscanf( line, "%lf",  &amp;amp;double_value );
    a[row]= double_value;
    row++;
//   if ( row %100000 ==0 ) { printf ( "Processed %i\n", row ); }

}
fclose(myfile);
}

/* -------------------------------------------------------------------- */
/* .. Setup Cluster Sparse Solver control parameters.                                 */
/* -------------------------------------------------------------------- */
    iparm[ 0] =  1; /* Solver default parameters overriden with provided by iparm */
    iparm[ 1] =  2; /* Use METIS for fill-in reordering */
    iparm[ 5] =  0; /* Write solution into x */
    iparm[ 7] =  2; /* Max number of iterative refinement steps */
    iparm[ 9] = 13; /* Perturb the pivot elements with 1E-13 */
    iparm[10] =  0; /* Don't use nonsymmetric permutation and scaling MPS */
    iparm[12] =  1; /* Switch on Maximum Weighted Matching algorithm (default for non-symmetric) */
    iparm[17] = -1; /* Output: Number of nonzeros in the factor LU */
    iparm[18] = -1; /* Output: Mflops for LU factorization */
    iparm[27] =  0; /* Single precision mode of Cluster Sparse Solver */
    iparm[34] =  0; /* Cluster Sparse Solver use C-style indexing for ia and ja arrays */
    iparm[39] =  0; /* Input: matrix/rhs/solution stored on master */
    maxfct = 1; /* Maximum number of numerical factorizations. */
    mnum   = 1; /* Which factorization to use. */
    msglvl = 1; /* Print statistical information in file */
    error  = 0; /* Initialize error flag */

/* -------------------------------------------------------------------- */
/* .. Reordering and Symbolic Factorization. This step also allocates   */
/* all memory that is necessary for the factorization.                  */
/* -------------------------------------------------------------------- */
    phase = 11;
    cluster_sparse_solver ( pt, &amp;amp;maxfct, &amp;amp;mnum, &amp;amp;mtype, &amp;amp;phase,
                &amp;amp;n, a, ia, ja, &amp;amp;idum, &amp;amp;nrhs, iparm, &amp;amp;msglvl, &amp;amp;ddum, &amp;amp;ddum, &amp;amp;comm, &amp;amp;error );
    if ( error != 0 )
    {
        if ( rank == 0 ) printf ("\nERROR during symbolic factorization: %lli", (long long int)error);
        mpi_stat = MPI_Finalize();
        return 1;
    }
    if ( rank == 0 ) printf ("\nReordering completed ... ");

/* -------------------------------------------------------------------- */
/* .. Numerical factorization.                                          */
/* -------------------------------------------------------------------- */
    phase = 22;
    cluster_sparse_solver ( pt, &amp;amp;maxfct, &amp;amp;mnum, &amp;amp;mtype, &amp;amp;phase,
                &amp;amp;n, a, ia, ja, &amp;amp;idum, &amp;amp;nrhs, iparm, &amp;amp;msglvl, &amp;amp;ddum, &amp;amp;ddum, &amp;amp;comm, &amp;amp;error );
    if ( error != 0 )
    {
        if ( rank == 0 ) printf ("\nERROR during numerical factorization: %lli", (long long int)error);
        mpi_stat = MPI_Finalize();
        return 2;
    }
    if ( rank == 0 ) printf ("\nFactorization completed ... ");

/* -------------------------------------------------------------------- */
/* .. Back substitution and iterative refinement.                       */
/* -------------------------------------------------------------------- */
    phase = 33;

row = 0;
myfile = fopen ( "b.txt", "r" );

while( !feof(myfile) &amp;amp;&amp;amp; row &amp;lt; n ) {
   fgets( line, sizeof(line), myfile);
   sscanf( line, "%lf",  &amp;amp;double_value );
  b[row]= double_value;
   x[row] = 0.0;
    row++;
}

fclose(myfile);

     if ( rank == 0 ) printf ("\nSolving system...");
    cluster_sparse_solver ( pt, &amp;amp;maxfct, &amp;amp;mnum, &amp;amp;mtype, &amp;amp;phase,
                &amp;amp;n, a, ia, ja, &amp;amp;idum, &amp;amp;nrhs, iparm, &amp;amp;msglvl, b, x, &amp;amp;comm, &amp;amp;error );
    if ( error != 0 )
    {
        if ( rank == 0 ) printf ("\nERROR during solution: %lli", (long long int)error);
        mpi_stat = MPI_Finalize();
        return 4;
    }

    if ( rank == 0 )
    {
        printf ("\nThe solution of the system is: ");
        for ( j = 0; j &amp;lt; n; j++ )
        {
            printf ( "\n x [%lli] = % f", (long long int)j, x[j] );
        }
        /*  Compute residual */
        struct matrix_descr descrA;
        sparse_matrix_t csrA;
        sparse_status_t status;
        status = mkl_sparse_d_create_csr( &amp;amp;csrA, SPARSE_INDEX_BASE_ONE, n, n, ia, ia+1, ja, a);
        if (status != SPARSE_STATUS_SUCCESS) {
            printf("Error in mkl_sparse_s_create_csr\n");
            mkl_sparse_destroy( csrA );
            goto final;
        }
        descrA.type = SPARSE_MATRIX_TYPE_SYMMETRIC;
        descrA.mode = SPARSE_FILL_MODE_UPPER;
        descrA.diag = SPARSE_DIAG_NON_UNIT;
        status = mkl_sparse_d_mv( SPARSE_OPERATION_NON_TRANSPOSE, 1.0, csrA, descrA, x, 0.0, bs);
        if (status != SPARSE_STATUS_SUCCESS) {
            printf("Error in mkl_sparse_s_mv\n");
            mkl_sparse_destroy( csrA );
            goto final;
        }
        mkl_sparse_destroy( csrA );

        res  = 0.0;
        res0 = 0.0;
        for ( j = 0; j &amp;lt; n; j++ )
        {
//            printf ( "\nCalculating %f - %f\n" , bs[j], b[j] );
            res  += (bs[j] - b[j]) * (bs[j] - b[j]);
            res0 += b[j] * b[j];
       }
        res = sqrt ( res ) / sqrt ( res0 );
        printf ( "\nRelative residual = %e\n", res );
    }

/* -------------------------------------------------------------------- */
/* .. Termination and release of memory. */
/* -------------------------------------------------------------------- */
    phase = -1; /* Release internal memory. */
    cluster_sparse_solver ( pt, &amp;amp;maxfct, &amp;amp;mnum, &amp;amp;mtype, &amp;amp;phase,
                &amp;amp;n, &amp;amp;ddum, ia, ja, &amp;amp;idum, &amp;amp;nrhs, iparm, &amp;amp;msglvl, &amp;amp;ddum, &amp;amp;ddum, &amp;amp;comm, &amp;amp;error );
    if ( error != 0 )
    {
        if ( rank == 0 ) printf ("\nERROR during release memory: %lli", (long long int)error);
        goto final;
    }
    /* Check residual */
    if(rank == 0)
        {
            if ( res &amp;gt; 1e-5 )
        {
            printf ("\nError: residual is too high!\n");
            error = 5;
            goto final;
        }
        }
final:
    if ( rank == 0 )
    {
        if ( error != 0 )
        {
            printf("\n TEST FAILED\n");
        } else {
            printf("\n TEST PASSED\n");
        }
    }
    mpi_stat = MPI_Finalize();
    return error;
}

&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Oct 2021 14:45:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/undefined-reference-to-cluster-sparse-solver-with-2021-mpiicc/m-p/1323146#M32218</guid>
      <dc:creator>segmentation_fault</dc:creator>
      <dc:date>2021-10-19T14:45:20Z</dc:date>
    </item>
  </channel>
</rss>

