[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