<div dir="ltr">I wrote <span style="font-family:arial,sans-serif;font-size:12.8000001907349px">runex52_superlu with </span>'-use_superlu_ilu' because only superlu (sequential) supports ilu, not superlu_dist. <div><br><div>Hong<br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 6, 2014 at 10:17 AM, Mark Adams <span dir="ltr"><<a href="mailto:mfadams@lbl.gov" target="_blank">mfadams@lbl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">ex52 sets SuperLU explicitly (appended) and yes I did modify the runex52 rule.  I have it running now with superlu_dist.<div>Thanks,</div><div>Mark</div><div><br></div><div><div>    ierr = KSPSetType(ksp,KSPPREONLY);CHKERRQ(ierr);</div><div>    PC  pc;</div><div>    Mat F;</div><div>    ierr = KSPGetPC(ksp,&pc);CHKERRQ(ierr);</div><div>    if (flg) {</div><div>      ierr = PCSetType(pc,PCLU);CHKERRQ(ierr);</div><div>    } else if (flg_ilu) {</div><div>      ierr = PCSetType(pc,PCILU);CHKERRQ(ierr);</div><div>    }</div><div>    ierr = PCFactorSetMatSolverPackage(pc,MATSOLVERSUPERLU);CHKERRQ(ierr);</div><div>    ierr = PCFactorSetUpMatSolverPackage(pc);CHKERRQ(ierr); /* call MatGetFactor() to create F */</div><div>    ierr = PCFactorGetMatrix(pc,&F);CHKERRQ(ierr);</div><div>    ierr = MatSuperluSetILUDropTol(F,1.e-8);CHKERRQ(ierr);</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 6, 2014 at 8:01 AM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span><br>
> Matrix format mpiaij does not have a solver package superlu for LU.<br>
<br>
</span>   SuperLU is not parallel, it does not work with mpiaij matrix.<br>
<br>
   Did you modify the runex52_superlu  rule in the makefile or something to run on 2 processors? In master it looks like<br>
runex52_superlu:<br>
        -@${MPIEXEC} -n 1 ./ex52 -use_superlu_ilu > ex52.tmp 2>&1;<br>
<br>
<br>
   If you want to run on two processors you need to use superlu_dist<br>
<span><font color="#888888"><br>
  Barry<br>
</font></span><div><div><br>
> On Nov 6, 2014, at 5:54 AM, Mark Adams <<a href="mailto:mfadams@lbl.gov" target="_blank">mfadams@lbl.gov</a>> wrote:<br>
><br>
> I am running on KNC and ex52 is sort of running, SuperLU runs on one processor, but fails with this message on 2 procs.  The error message suggests downloading superLU but you can see that it was downloaded.  Any ideas?<br>
><br>
> Mark<br>
><br>
> 03:19 bc0915 master ~/petsc/src/ksp/ksp/examples/tutorials$ make runex52_superlu PETSC_DIR=/global/homes/m/madams/petsc<br>
> make: Warning: File `makefile' has modification time 19 s in the future<br>
> [0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------<br>
> [0]PETSC ERROR: No support for this operation for this object type<br>
> [0]PETSC ERROR: Matrix format mpiaij does not have a solver package superlu for LU. Perhaps you must ./configure with --download-superlu<br>
> [0]PETSC ERROR: See <a href="http://www.mcs.anl.gov/petsc/documentation/faq.html" target="_blank">http://www.mcs.anl.gov/petsc/documentation/faq.html</a> for trouble shooting.<br>
> [0]PETSC ERROR: Petsc Development GIT revision: v3.5-25-g0ace994  GIT Date: 2014-07-07 14:50:15 +0200<br>
> [0]PETSC ERROR: ./ex52 on a arch-knc-opt named bc0915-mic0 by madams Thu Nov  6 03:20:04 2014<br>
> [0]PETSC ERROR: Configure options --known-level1-dcache-size=32768 --known-level1-dcache-linesize=32 --known-level1-dcache-assoc=0 --known-memcmp-ok=1 --known-sizeof-char=1 --known-sizeof-void-p=8 --known-sizeof-short=2 --known-sizeof-int=4 --known-sizeof-long=8 --known-sizeof-long-long=8 --known-sizeof-float=4 --known-sizeof-double=8 --known-sizeof-size_t=8 --known-bits-per-byte=8 --known-sizeof-MPI_Comm=4 --known-sizeof-MPI_Fint=4 --known-mpi-long-double=1 --known-mpi-int64_t=1 --known-mpi-c-double-complex=1 --download-parmetis --download-metis --download-superlu_dist --download-superlu --with-batch=1 --CFLAGS="-mmic -mkl -fp-model precise" --CXXFLAGS="-mmic -mkl -fp-model precise" --FFLAGS="-mmic -mkl -fp-model precise" --with-cc=mpiicc --with-cxx=mpiicpc --with-fc=mpiifort --known-mpi-shared-libraries=1 --with-shared-libraries=0 --with-x=0 --with-debugging=0 PETSC_ARCH=arch-knc-opt PETSC_DIR=/global/homes/m/madams/petsc<br>
> [0]PETSC ERROR: #1 MatGetFactor() line 3962 in /chos/global/u2/m/madams/petsc/src/mat/interface/matrix.c<br>
> [0]PETSC ERROR: #2 PCFactorSetUpMatSolverPackage_Factor() line 16 in /chos/global/u2/m/madams/petsc/src/ksp/pc/impls/factor/factimpl.c<br>
> [0]PETSC ERROR: #3 PCFactorSetUpMatSolverPackage() line 26 in /chos/global/u2/m/madams/petsc/src/ksp/pc/impls/factor/factor.c<br>
> [0]PETSC ERROR: #4 main() line 209 in /global/homes/m/madams/petsc/src/ksp/ksp/examples/tutorials/ex52.c<br>
> [0]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-maint@mcs.anl.gov----------<br>
> application called MPI_Abort(MPI_COMM_WORLD, 56) - process 0<br>
> APPLICATION TERMINATED WITH THE EXIT STRING: Interrupt (signal 2)<br>
<br>
</div></div></blockquote></div><br></div>
</blockquote></div><br></div></div></div></div>