-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Fix syncScope livelock #119 * Alternative fix by ensuring dispatch to idle workers * stash - this seems hopeless
- Loading branch information
Showing
9 changed files
with
72 additions
and
93 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,27 @@ | ||
digraph syncScopeFSA{ | ||
splines=ortho; | ||
node [shape = doublecircle]; InitialState SB_Exit; | ||
node [shape = circle, fontcolor=white, fillcolor=darkslategrey, style="filled"]; SB_CheckTask SB_Steal SB_SuccessfulTheft SB_OutOfChildTasks; | ||
node [shape = circle, fontcolor=white, fillcolor=darkslategrey, style="filled"]; SB_OutOfTasks SB_CheckTask SB_Steal SB_SuccessfulTheft; | ||
InitialState -> SB_CheckTask [color="black:invis:black", xlabel="entry point"]; | ||
node [shape = octagon, fontcolor=black, fillcolor=lightsteelblue, style="rounded,filled"]; SB_CheckTask_SBE_HasChildTask SB_Steal_SBE_ReceivedTask ; | ||
node [shape = diamond, fontcolor=black, fillcolor=coral, style="rounded,filled"]; SB_CheckTask_SBE_NoDescendants SB_Steal_SBE_NoDescendants SB_OutOfChildTasks_SBE_NoDescendants ; | ||
SB_CheckTask_SBE_HasChildTask [label="SBE_HasChildTask\nnot isNil(task)"]; | ||
node [shape = octagon, fontcolor=black, fillcolor=lightsteelblue, style="rounded,filled"]; SB_CheckTask_SBE_HasTask SB_Steal_SBE_ReceivedTask ; | ||
node [shape = diamond, fontcolor=black, fillcolor=coral, style="rounded,filled"]; SB_OutOfTasks_SBE_NoDescendants SB_CheckTask_SBE_NoDescendants SB_Steal_SBE_NoDescendants ; | ||
SB_CheckTask_SBE_HasTask [label="SBE_HasTask\nnot isNil(task)"]; | ||
SB_Steal_SBE_ReceivedTask [label="SBE_ReceivedTask\nlootedTask"]; | ||
SB_OutOfTasks_SBE_NoDescendants [label="SBE_NoDescendants\nhasDescendantTasks(scopedBarrier)"]; | ||
SB_CheckTask_SBE_NoDescendants [label="SBE_NoDescendants\nhasDescendantTasks(scopedBarrier)"]; | ||
SB_Steal_SBE_NoDescendants [label="SBE_NoDescendants\nhasDescendantTasks(scopedBarrier)"]; | ||
SB_OutOfChildTasks_SBE_NoDescendants [label="SBE_NoDescendants\nhasDescendantTasks(scopedBarrier)"]; | ||
SB_OutOfTasks -> SB_OutOfTasks_SBE_NoDescendants[style=bold, xlabel="always"]; | ||
SB_OutOfTasks_SBE_NoDescendants -> SB_Exit [color="coral", fontcolor="coral", xlabel="interrupted"]; | ||
SB_OutOfTasks_SBE_NoDescendants -> SB_Steal [xlabel="default"]; | ||
SB_CheckTask -> SB_CheckTask_SBE_NoDescendants[style=bold, xlabel="always"]; | ||
SB_CheckTask_SBE_NoDescendants -> SB_Exit [color="coral", fontcolor="coral", xlabel="interrupted"]; | ||
SB_CheckTask_SBE_NoDescendants -> SB_CheckTask_SBE_HasChildTask[xlabel="normal flow"]; | ||
SB_CheckTask_SBE_HasChildTask -> SB_CheckTask [style=dashed, xlabel="true"]; | ||
SB_CheckTask_SBE_HasChildTask -> SB_OutOfChildTasks [xlabel="default"]; | ||
SB_CheckTask_SBE_NoDescendants -> SB_CheckTask_SBE_HasTask[xlabel="normal flow"]; | ||
SB_CheckTask_SBE_HasTask -> SB_CheckTask [style=dashed, xlabel="true"]; | ||
SB_CheckTask_SBE_HasTask -> SB_OutOfTasks [xlabel="default"]; | ||
SB_Steal -> SB_Steal_SBE_NoDescendants[style=bold, xlabel="always"]; | ||
SB_Steal_SBE_NoDescendants -> SB_Exit [color="coral", fontcolor="coral", xlabel="interrupted"]; | ||
SB_Steal_SBE_NoDescendants -> SB_Steal_SBE_ReceivedTask[xlabel="normal flow"]; | ||
SB_Steal_SBE_ReceivedTask -> SB_SuccessfulTheft [style=dashed, xlabel="true"]; | ||
SB_Steal_SBE_ReceivedTask -> SB_Steal [xlabel="default"]; | ||
SB_SuccessfulTheft -> SB_OutOfChildTasks [xlabel="default"]; | ||
SB_OutOfChildTasks -> SB_OutOfChildTasks_SBE_NoDescendants[style=bold, xlabel="always"]; | ||
SB_OutOfChildTasks_SBE_NoDescendants -> SB_Exit [color="coral", fontcolor="coral", xlabel="interrupted"]; | ||
SB_OutOfChildTasks_SBE_NoDescendants -> SB_Steal [xlabel="default"]; | ||
SB_SuccessfulTheft -> SB_OutOfTasks [xlabel="default"]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.