[ET Trac] #2626: Multipole is not OpenMP parallelized

Roland Haas trac-noreply at einsteintoolkit.org
Thu Aug 4 14:44:26 CDT 2022


#2626: Multipole is not OpenMP parallelized

 Reporter: Gabriele Bozzola
   Status: new
Milestone: 
  Version: 
     Type: enhancement
 Priority: trivial
Component: 

Comment (by Roland Haas):

If the loops \(e.g. the ones over radii\) contain calls to the interpolator then they cannot be OpenMP parallelized, since the interpolator \(no Cactus call actually\) is not thread save.

One would have to MPI parallelize but that is not trivial since the interpolator is a MPI collective call \(but different ranks may pass different arguments, so what is needed is “dummy” interpolator calls on those ranks that have run out of radii to work on\).  It is also not fully clear if this would speed up \(or not, if the inter-process communication actually dominates\). 

The loops over \(l,m\) can be OpenMP parallelized \(no interpolator call there\)  can be parallelized using OpenMP \(though watch out for shared temporary arrays and static variables\).

You may actually see an extra speedup, if you are using it, by switching from ASCII output to HDF5 output.

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2626/multipole-is-not-openmp-parallelized
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.einsteintoolkit.org/pipermail/trac/attachments/20220804/f1058ee7/attachment.html 


More information about the Trac mailing list