Modify the divided domain among worker processes

Asked by Bin Cheng on 2017-06-05

Hello.

I am trying to simulate granular flow using ESyS-Particle.

Because almost all particles are concentrated in the lower right corner of the BoundingBox in my simulation, the load would be not balanced if we divided the domain equally. Therefore, we need to modify the divided domain according to the distribution of the particles, e.g., allocating more worker processes in the lower right corner.

In other words, if the domain is x=[-10 10], y=[-10 10], the division points should be x=[-10 0 4 6 8 10], y=[-10 0 4 6 8 10], which may be better than the averag division points, x=[-10 -6 -2 2 6 10], y=[-10 -6 -2 2 6 10].

Would you give me some suggestions on how to modify the divided domain?

Best Regards,

Bin

Question information

Language:
English Edit question
Status:
Solved
For:
ESyS-Particle Edit question
Assignee:
No assignee Edit question
Solved by:
SteffenAbe
Solved:
2017-07-13
Last query:
2017-07-13
Last reply:
2017-07-13
Launchpad Janitor (janitor) said : #1

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

Dion Weatherley (d-weatherley) said : #2

This question needs to be answered

Dion Weatherley (d-weatherley) said : #3

Hi Bin,

At the present time, ESyS-Particle only implements static spatial domain decomposition with each coordinate direction divided into a specified number of equal-sized intervals. Without modifying the C++ engine of ESyS-Particle there is no way to change this subdivision method.

It may be possible to modify the engine for your specific needs, with relatively few changes. To implement so-called dynamic spatial domain decomposition would require a serious re-write of many parts of the engine however. The developers have no plans to do this at the present time although we would gladly help anyone willing to volunteer to do this.

Cheers,

Dion

Bin Cheng (bincheng) said : #4

Thanks for your advise.

May I request a little more detailed document on Data Structure and Program Architecture of ESyS-Particle so I could contribute to this code more effectively? I should be most grateful if that is possible.

Yours sincerely,

Bin

Best SteffenAbe (s-abe) said : #5

Hi Bin,

a rewrite of the core domain decomposition code has been on my agenda for a while, but so far it hasn't happened due to a lack of resources. If this does happen, which might or might not happen in the foreseeable future, a more flexible decomposition of the computational domain will be one of the added features. However, this will most likely be restricted to the variation of the domain sizes along the coordinate axes, i.e. topologically we'll stick with a regular grid.

Steffen

Bin Cheng (bincheng) said : #6

Thanks for your help!

Bin Cheng (bincheng) said : #7

Thanks SteffenAbe, that solved my question.