Hi Roy,

I just checked in a change, I believe this is fixed now ---  at least 
reduced_basis_ex6 works with --enable-parmesh for me now in r6280.

But I'd appreciate if you could have a look at the diff. In 
RBEIMConstruction::evaluate_mesh_function I use the mesh function on a 
ghosted vector now, and broadcast the result. Incidentally, is there a 
better way to get the root_id for the broadcast? (I used Parallel::sum 
with libMesh::processor_id())

David


On 10/31/2012 05:33 PM, Roy Stogner wrote:
>
> And it doesn't look like it's ParallelMesh's fault.
>
> RBEIMConstruction::evaluate_mesh_function is querying a MeshFunction
> object, and that query returns the _out_of_mesh_value (an empty
> DenseVector by default) if it's asked for the value of a point that's
> not within any active local or active ghosted elements.
>
> Even with SerialMesh, this would normally fail, except that
> RBEIMConstruction built a serialized solution vector to hand to the
> MeshFunction, so results should be correct but performance should
> scale poorly.
>
> enrich_RB_space() and update_RB_system_matrices() are doing a localize
> to that serialized vector, so they must already be parallel_only
> methods - would it be possible to change them to only query local
> elements, and then if necessary sync the resulting data afterwards?
>
> For now I'm going to disable reduced_basis_ex6 in the --enable-parmesh
> case.
> ---
> Roy


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to