[petsc-users] PETSc and AMPI

Eduardo erocha.ssa at gmail.com
Tue Feb 3 08:04:40 CST 2015


If you can pack and unpack the global data (there are a few ways of doing
that in AMPI), it should work, I believe. Further, even without migration,
since you over-subscribe and each MPI rank in AMPI is implemented as a
thread, you would need to guarantee that each thread in a physical
processor has its own copy of the "global" variables. You could use TLS,
for instance to privatize this global data. There some provision for that
in AMPI, however, as far as I can tell it requires static compilation.

On Tue, Feb 3, 2015 at 10:37 AM, Barry Smith <bsmith at mcs.anl.gov> wrote:

>
> > On Feb 2, 2015, at 11:27 PM, Jed Brown <jed at jedbrown.org> wrote:
> >
> > Barry Smith <bsmith at mcs.anl.gov> writes:
> >>   Way more complicated then needed :-)
> >
> > Heh, I was just spelling it out.
> >
> >>> If AMPI creates threads dynamically,
> >>
> >>  How could it possibly create threads dynamically and still be
> >>  running in the MPI 1 model of a consistent number of MPI "processes"
> >>  at all times?
> >
> > I don't know, but it seems plausible that it would over-subscribe
>
>   It definitely over-subscribes.
>
> > and
> > then dynamically migrate MPI ranks around.
>
>    Yes "cheating" with out global data structures won't work if it
> migrates the MPI ranks around but I can't image how it would do that.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20150203/6ad72049/attachment.html>


More information about the petsc-users mailing list