<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Hi Bob,<br>
<br>
thanks for your valuable feedback. I haven't noticed the bug with
gfortran - seems as an Intel compiler thing. <br>
Regarding the segfaults though, I am convinced this is due to the
MUMPS/ParMETIS versions, I had the same problem a few weeks ago: <br>
The thing is, MUMPS 4.10.0 does not support ParMETIS 4.X.X,
although there seem to be some patches to it around. I would
recommend to use the standard sources of MUMPS 4.10.0 + ParMETIS
3.2.0.<br>
This is the combination that should work with MUMPS 4.10.0. The
new release of MUMPS should support ParMETIS 4.X and METIS 5.X.<br>
<br>
Could you try to downgrade your ParMETIS/METIS and use the
unpatched MUMPS sources?<br>
<br>
Best regards<br>
<br>
Jakub<br>
<br>
<br>
On 06/17/2013 09:53 PM, bob wrote:<br>
</div>
<blockquote
cite="mid:1629007483.29310.1371498832757.JavaMail.www@wwinf1k23"
type="cite">
<p> </p>
<blockquote cite="mid:51BA451D.6040808@math.cas.cz">Hello, <br>
<br>
sorry about the missing examples. However, an example is
attached. It is quite recent, and it is contained within the
version on git. It should go to the examples/ subdirectory (as
well as the updated Makefile). I recommend anyway to use the
version downloaded from git, as there are some major changes
important for scalability on very large numbers of cores. The
example creates a simple mesh on a cube and solves a Poisson
equation on it. I hope the example is reasonably commented and
sort of self-explanatory. No input data are needed for it. <br>
To run it, you just need to specify <br>
mpirun -np X poisson_on_cube NUM_EL_PER_SUB_EDGE
NUM_SUB_PER_CUBE_EDGE NLEVELS <br>
where <br>
X - is number of processes <br>
NUM_EL_PER_SUB_EDGE - number of cubic elements on an edge of a
subdomain, known as H/h in DD theory <br>
NUM_SUB_PER_CUBE_EDGE - number of cubic subdomains on an edge of
the unit cube <br>
NLEVELS - number of levels employed by BDDC, say 2,3,4 are
reasonable values <br>
<br>
I will be happy if you let me know about your experience with
the code. <br>
<br>
Best wishes <br>
<br>
Jakub</blockquote>
<p> </p>
<p><br>
<span class="short_text"><span class="hps">Thanks.</span></span><br>
<br>
<br>
Testing : git version<br>
<br>
- Configuration : <br>
<br>
OS : RH 6.2<br>
Intel compilers 12.1 + MKL 10.3 + MPI<br>
Mumps 4.10.0<br>
Parmetis 4.0.3<br>
<br>
<br>
- An error occured during the compilation : module_utils.f90<br>
<br>
fixed : logical elemental function fuzzyLessThan(x,y) : "end
return" instead 'end'<br>
<br>
- Some warnings :<br>
<br>
lobpcg_driver.c(276): warning #167: argument of type "void *" is
incompatible with parameter of type "void (*)(void *, void *,
void *)"<br>
precfun, /* precfun is set above: for option with
preconditioner, use mvecmultM here, without it, use NULL */<br>
^<br>
poisson_on_cube.f90(870): warning #6843: A dummy argument with
an explicit INTENT(OUT) declaration is not given an explicit
value. [INETS]<br>
inets,linets, &<br>
---------------------------------^<br>
poisson_on_cube.f90(871): warning #6843: A dummy argument with
an explicit INTENT(OUT) declaration is not given an explicit
value. [XYZS]<br>
xyzs,lxyzs1,lxyzs2, &<br>
---------------------------------^<br>
poisson_on_cube.f90(872): warning #6843: A dummy argument with
an explicit INTENT(OUT) declaration is not given an explicit
value. [SOLS]<br>
sols,lsols)<br>
---------------------------------^<br>
<br>
<br>
- Execution failed :<br>
<br>
poisson_on_cube 4 2 2<br>
<br>
===========Possion on cube solver=========== <br>
| Solves problem |<br>
| -Îu = 1 on Ω = [0,1]^3, |<br>
| u = 0 on Î, |<br>
| using FEM and the BDDCML solver. |<br>
============================================ <br>
Characteristics of the problem :<br>
number of processors nproc = 4<br>
number of dimensions ndim = 3<br>
mesh dimension meshdim = 3<br>
number of elements global nelem = 512<br>
number of subdomains nsub = 8<br>
number of nodes global nnod = 729<br>
number of DOF ndof = 729<br>
number of levels nlevels = 2<br>
number of subdomains in levels = 8
1<br>
Characteristics of iterational process:<br>
tolerance of error tol =
1.000000000000000E-006<br>
maximum number of iterations maxit = 500<br>
number of incresing residual ndecrmax = 50<br>
using recycling of Krylov method ? 1<br>
Initializing BDDCML ...<br>
Initializing BDDCML done.<br>
Loading data ...<br>
Loading data done.<br>
Preconditioner set-up ...<br>
ERROR: task 1: Segmentation fault<br>
ERROR: task 0: Segmentation fault<br>
ERROR: task 3: Segmentation fault<br>
ERROR: task 2: Segmentation fault<br>
<br>
bddcml_setup_preconditioner -> levels_pc_setup ->
levels_prepare_standard_level -> dd_prepare_schur ->
mumps_init<br>
<br>
<br>
<span class="short_text"><span class="hps">Wrong datas </span><span
class="hps">?</span></span></p>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
Jakub Sistek, Ph.D.
Institute of Mathematics of the AS CR
<a class="moz-txt-link-freetext" href="http://www.math.cas.cz/~sistek">http://www.math.cas.cz/~sistek</a>
tel: (+420) 222 090 710</pre>
</body>
</html>