While trying to track down a bug in my next ParallelMesh patch, I ran
into an apparent bug in our Parmetis support that dates back for I
don't know how far.

We already serialize and fall back on Metis when we have more elements
than processors, and according to our code comments N_e<N_p is simply
an unsupported configuration for Parmetis... but I'm seeing crashes
(segfaults and/or double-frees) in quite a few other cases.  Running
adaptivity_ex1 with 1 through 20 elements on 1 through 15 processors
gives failures whenever num_proc: num_elem is in

3:3
4:4
5:5,6,7,8
6:6,7,8
7:7,8,9
8:8,9,10,11
9:9,10,11,12
10:10,11,12,13,14,15,16,17
11:11,12,13,14,15,16,17
12:12,13,14,15,16,17
13:13,14,15,16,17,18,19
14:14,15,16,17,18,19,20
15:15,16,17,18,19,20

Not sure what the pattern is other than "1 or 2 procs always works,
otherwise 'N_e==N_p + {0,...n}' always fails for some n >= 0"

Since n seems to be N_p dependent we can't just increase the "fall
back on Metis" threshhold.  Anyone know enough about Parmetis to say
what might be going on here?  It's not like we're giving it some
tricky topology, either; adaptivity_ex1 is just trying to
prepare_for_use the result of a build_line when it dies.
---
Roy

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to