[Dune-devel] SOCIS 2014: FEM assembly with threads
Agnese, Marco
m.agnese13 at imperial.ac.uk
Thu Jul 3 14:14:03 CEST 2014
I answer here because I haven't received any e-mail from the mailing-list and I don't know how to answer to a certain thread without having the e-mail.
Dear Jö,
I didn't know that the algorithm proposed by me was a well known method called coloring but thank you for the hint. I took a look in literature and seems very simple to implement a greedy approach to find a sub-optimal minimum set of colors for a connected component.
Dear Markus,
I know that I abuse a little of the terms shared and global. Next time I will try to be more precise to avoid confusion.
Thank you for the feedback. Therefore I won't implement the coloring algorithm.
I am working, as suggested by you, at modify the assemble process :
>1. modify your assembly routine such that each thread sets up local
> matrix and a local vector with some overlap.
>
> What I mean by this is the following. Partition the unknows between
> the threads (the owner region). Then augment the partition by
> adding all unknowns to the set that are connected by a non-zero
> entry of the global matrix to an unknown already in the initial
> partition. The added unknowns form the overlap/copy part of the thread.
> 2. Create the corresponding parallel index sets.
> 3. Perform a parallel matrix vector product using
> OverlappingSchwarzOperator.
As soon as I have some update I will post here. For what concern the documentation, this weekend I will try to post on the blog about the fem example and I will report on it every design choosen.
Best,
Marco.
More information about the Dune-devel
mailing list