Topic: Decomposition of domain

Hi Borek!

I have a quick question concerning the decomposition of the domain when running oofem in parallel mode. Is it always necessary to manually decompose the domain? I mean, oofem can be linked with the Parmetis library which contain the functionality to decompose a mesh into subdomains and is that functionality used? That would save a lot of work..

/Carl

2

Re: Decomposition of domain

Dear Carl,

This is assumed to be done in pre-processing phase. The reason is that if you have a single domain and need its decomposition then this is a typically a serial task. We use t3d2poofem converter, which can do this task in advance, when using t3d mesh generator. We have decided not to make this part of parallel oofem, since this serial task can be done at the same cost by pre-processor. This task can hardly be done in parallel (as it will requires to have already an existing decomposition) so it makes no sense to make it part of parallel code as the scalability will be affected.

In fact oofem interfaces to ParMetis, but it uses it only in load balancing step to obtain updated decomposition, based on existing one. This is a task, that is done in parallel.

Borek

Re: Decomposition of domain

Hi Borek!

Ok, I see.. The problem is that I use a 2D domain and a preprocessor that I have built myself, but I guess I can try to rewrite my code to make a simple decomposition of the domain or write a program that decomposes an existing .in file.

/Carl