-
-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extend docs on compositional coupling with deadlock example #498
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that the explanation for the deadlock and its solution is clear:)
... | ||
</coupling-scheme:parallel-explicit> | ||
``` | ||
|
||
For this example, all three participants are executed in parallel to one another, whereas `MySolver1` exchanges data with `MySolver2` and `MySolver3`, but not the latter two with each other. To also get an interaction between `MySolver2` and `MySolver3`, add a third coupling scheme. | ||
For this example, all three participants are executed in parallel to one another, whereas `A` exchanges data with `B` and `C`, but not the latter two with each other. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For this example, all three participants are executed in parallel to one another, whereas `A` exchanges data with `B` and `C`, but not the latter two with each other. | |
For this example, all three participants are executed in parallel to one another, whereas `A` exchanges data with `B` and `C`, but `B` and `C` do not exchange data with each other. |
I know it says the same, but I think it's better to make it even more clear.
Maybe it will be nice to add a comment that "first" and "second" doesn't matter?
Not difficult. But wouldn't it be neater to see an actual config visualization? You mentioned that you have a minimal example, right? |
This error can only occur with serial coupling schemes? And is it possible to occur with two or more participants? |
Co-authored-by: carme-hp <[email protected]>
https://github.com/precice/precice/blob/develop/tests/serial/circular/Explicit.xml and swap participants in line 65. In the config visualization the coupling scheme is separated from the exchanges, right? |
yes
You need at least three participant to get such a circular dependency. For two participants, you can only define one coupling scheme. |
I promised in precice/precice#1907 to add a docs section on deadlocks in compositional coupling. I tried to add the simplest possible example.
The mermaid graph will probably not work on the website. Would this be easy to add? If not, I would add the comment in a comment and add the svg instead.
@fsimonis @carme-hp Enough information covered and would you prefer to see more examples and problems?
@orlandoisepic Could be a potential case for the checker a well.