[Dune] Parallel Computation: ISTLBackend requests ParMETIS and SuperLU

Lukas Riedel riedel-lukas at gmx.de
Wed Jun 25 10:55:52 CEST 2014


Dear Developers,
i ran into two problems creating a code for parallel computation with PDELab. It works, but I would like DUNE to use ParMETIS and SuperLU as it requests.

OS: Mac OS X 10.9.3 Mavericks
GCC: gcc (MacPorts gcc49 4.9-20140416_2) 4.9.0 20140416 (prerelease)
G++: g++ (MacPorts gcc49 4.9-20140416_2) 4.9.0 20140416 (prerelease)
clang: 	clang version 3.5.0 (trunk 210448)
	Target: x86_64-apple-darwin13.2.0
	Thread model: posix
CC: 		Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
	Target: x86_64-apple-darwin13.2.0
	Thread model: posix
DUNE-modules: 	dune-common.............: version 2.3.0
		dune-geometry...........: version 2.3.0
		dune-grid...............: version 2.3.0
		dune-istl...............: version 2.3.0
		dune-localfunctions.....: version 2.3.0
		dune-pdelab.............: version 2.0-dev
		dune-typetree...........: version 2.3-dev
		ALBERTA.................: version 2.0
		ALUGrid.................: version 1.52 (parallel)

I attached the output of ./dunecontrol as a txt-file.

I run the following command inside the DUNE-directory:
	$ ./dune-common/bin/dunecontrol --only=<module> --opts=parallel-debug.opts all

I use the parallel-debug.opts file provided by the archive of the DUNE course in March 2014:
	# use these options for configure if no options a provided on the cmdline
	CONFIGURE_FLAGS="--prefix=/Users/lriedel/opt --disable-documentation -disable-mpiruntest --enable-parallel --with-alugrid=/Users/lriedel/opt/alugrid —with alberta=/Users/lriedel/opt/alberta CXX=g++ CC=gcc CXXFLAGS=\"-O0 -g -Wall -Wno-deprecated-declarations -Wa,-q\" CFLAGS=\"-O0 -g -Wall -Wno-deprecated-declarations -Wa,-q\""
	MAKE_FLAGS=„all"


Problems:

1. I installed METIS and ParMETIS and DUNE recognizes them when building a module via ./dunecontrol , but while running the program on multiple processes I still receive the following output:

TIME STEP [Alexander (order 2)]      1 time (from):   0.0000e+00 dt:   1.0000e-01 time (to):   1.0000e-01
STAGE 1 time (to):   2.9289e-02.
  Initial defect:   9.5196e-06
Successive accumulation of data on coarse levels only works with ParMETIS installed.  Fell back to accumulation to one domain on coarsest level
  Newton iteration  1.  New defect:   7.2254e-06.  Reduction (this):   7.5900e-01.  Reduction (total):   7.5900e-01
Successive accumulation of data on coarse levels only works with ParMETIS installed.  Fell back to accumulation to one domain on coarsest level
  Newton iteration  2.  New defect:   4.1631e-07.  Reduction (this):   5.7618e-02.  Reduction (total):   4.3732e-02

I am using the following linear solver backend (currently suppressing SuperLU): 

  typedef Dune::PDELab::ISTLBackend_BCGS_AMG_SSOR<IGO> LS;
  LS ls(gfs,5000,0,false,false);

followed by the Newton Solver

  typedef Dune::PDELab::Newton<IGO,LS,U> PDESOLVER;
  PDESOLVER pdesolver(igo,ls);
  pdesolver.setReassembleThreshold(0.0);
  pdesolver.setVerbosityLevel(2);
  pdesolver.setReduction(1e-10);
  pdesolver.setMinLinearReduction(1e-4);
  pdesolver.setMaxIterations(6);
  pdesolver.setLineSearchMaxIterations(10);

and a OneStepMethod

  Dune::PDELab::Alexander2Parameter<Real> alex2;
  Dune::PDELab::OneStepMethod<Real,IGO,PDESOLVER,U,U> osm(alex2,igo,pdesolver);

Do I have to tell DUNE explicitly that it shall use ParMETIS?


2. I do not know where to install SuperLU.

I installed it to Users/lriedel/opt/SuperLU_4.3/ as this is the directory mentioned as „prefix“ in the opts-file, but DUNE can obviously not find it (see output-file)
DUNE seems to look for it inside /usr/local/SRC but it is only possible to install the newest version of SuperLU inside a folder structure as follows: ../SuperLU_4.3/SRC/
Is there a way to specify where I installed SuperLU so that DUNE can find its libraries?


Thank you and best regards
Lukas Riedel


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20140625/6260d042/attachment.htm>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dunecontrol-output.txt
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20140625/6260d042/attachment.txt>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20140625/6260d042/attachment-0001.htm>


More information about the Dune mailing list