• PaMPA is a parallel library for handling, redistributing
    and remeshing unstructured meshes on distributed-memory
    architectures.PaMPA dramatically eases and speeds-up the development of
    parallel numerical solvers for compact schemes. It provides
    solver writers with a distributed mesh abstraction and an
    API to:

    • describe unstructured and possibly heterogeneous meshes,
      on the form of a graph of interconnected entities of
      different kinds (e.g. elements, faces, edges, nodes);
    • attach values to the mesh entities;
    • distribute such meshes across processing elements, with an overlap of
      variable width;
    • perform synchronous or asynchronous data exchanges of values across
      processing elements;
    • describe numerical schemes by means of iterators over mesh entities and
      their connected neighbors of a given kind;
    • redistribute meshes so as to balance computational load;
    • perform parallel dynamic remeshing, by applying adequately a user-provided
      sequential remesher to relevant areas of the distributed mesh.
  • PaMPA runs concurrently multiple sequential remeshing tasks to perform
    dynamic parallel remeshing and redistribution of very large unstructured
    meshes. E.g., it can remesh a tetrahedral mesh from 27 to 610 Melements in
    35m on 240 procs of a workstation cluster.