[dune-pdelab] reg: OpenMP parallelization of assembly

Shubhangi Gupta sgupta at geomar.de
Fri Jun 26 09:23:55 CEST 2020


Dear Santiago,

Thanks a lot for your reply.

I was hoping it would be a bit easier than this to get openMP working.. 
but I'll give it a shot.. if by any chance it works, I'll get back to you :)

Warm wishes, Shubhangi

On 25.06.20 18:38, Santiago Ospina wrote:
> Hi Shubhangi,
>
> as far as I can tell, the main PDELab is not able to do so. I know 
> that this was tried out in the EXADUNE project but I don't know the 
> outcome of that implementation. Perhaps someone else may comment on 
> that one. But in general, you need that each thread owns a copy of a 
> LocalFunctionSpace, an LFSCache, an assembler_engine and an entity 
> (this may need some modifications on these classes). Once that is 
> done, most of the assembler loop can be done in parallel. Binds, loads 
> and assemble methods should be OK with multiple threads. The 
> problematic part comes on the unbind. There is when the local 
> container from assembler_engine are scattered to the global container. 
> Since contiguous entities are likely to have common DOFs or be very 
> near in memory in the global container, data races may appear. 
> Thinkthreads most of that is possible with the C++ thread, but I might 
> be wrong.
>
> Please let us know if you get that working ;-)
>
> Best,
> Santiago Ospina
>
> On Thu, Jun 25, 2020 at 2:10 PM Shubhangi Gupta <sgupta at geomar.de 
> <mailto:sgupta at geomar.de>> wrote:
>
>     Dear all,
>
>     The matrix assembly is the main bottleneck for my numerical
>     implementation in pdelab. So, I am thinking of parallelizing this
>     part
>     using openMP.. I understand that dune-pdelab is already capable of
>     doing
>     this...but I don't know where to start and I have only very
>     superficial
>     understanding of openMP.
>
>     Is there an example that I can look at? Or can someone give me a
>     quick
>     outline of how to proceed?
>
>     Thanks, and warm wishes, Shubhangi
>
>
>     _______________________________________________
>     dune-pdelab mailing list
>     dune-pdelab at lists.dune-project.org
>     <mailto:dune-pdelab at lists.dune-project.org>
>     https://lists.dune-project.org/mailman/listinfo/dune-pdelab
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-pdelab/attachments/20200626/c08b605e/attachment.htm>


More information about the dune-pdelab mailing list