Dear Katharina, I can address your points at least in part.
> 1. The MeshWorker is centered around the usage of FEValuesBase objects for > all local evaluations. While this is very general (all of the deal.II > assembly code gets channeled through it), it turned out to be too slow for > our purposes: When you only assemble vectors like in a matrix-free approach, > FEValues eats just too much time. This is not correct, since IntegrationInfo is a template argument to the MeshWorker loop. After settling in Heidelberg, I will provide you with a VectorInfo class (only a few dozen lines), which only extracts local degrees of freedom and thus is probably what you need. A student of mine has implemented matrix free grid transfer for DG using it and it works quite well. > 2. The parallel loop over cells for MeshWorker is based WorkStream which does > local computations in parallel but serializes writing into vectors or > matrices. This, again, was severely impacting performance, in particular on > multicore machines. The parallel loop is a single line in MeshWorker and if WorkStream is not sufficient, it could have been improved. Indeed, for DG at least, this loop can be run in parallel without any conflicts and there the WorkStream should be replaced. > 3. The looping in deal.II is based on the topology of the mesh. Again, this > does not really fit well with parallel algorithms where one wants to use > vectorization which processes several cells with a single CPU instruction. I guess this would fit in with the previous point. I implemented the parallelization just at hoc and without too much optimization, since I do not have support for this work. Any suggestions for improvements would be most welcome. > In order to be able to support DG, it might be advantageous to integrate the > MeshWorker. However, one would at least need to find a way to implement the > caching of the face data efficiently. I am very interested in this functionality, also in multilevel context. Maybe we can try to start working on it in Heidelberg this summer. Are you planning to attend the workshop? Best, Guido _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
