Dear all,
I have some questions pertaining to a recent successful creation of a workflow (albeit a very short one) that consists of 2 registration nodes. As it could work, soon I will be building a bigger pipeline that would hopefully be able to replace the manual processing we do in our group, so I'm just taking it step by step to be sure that my concepts and understanding is correct before I move on to the next level.
The DAG of the workflow is attached here in this post, and as you can see, it contains an infosource IdentityInterface node at the beginning to ensure that the portion from datasource to datasink get repeated for all the other subjects that I have. I have 16 mouse subjects, and when I executed the whole workflow, it worked fine and all the data turned out as expected, but I have some questions relating to the performance and the behavior of the execution with inforsource that I hope to ask here:
1. When I executed the workflow, I could see from the messages in terminal that the workflow was executed for each mouse one at a time (i.e. the registration workflow from datasource to datasink was run for all 16 mice one at a time, the program would wait for the previous mouse's run to complete before it executed the workflow for the next mouse). I was wondering if it would be possible to execute the entire thing parallel for all 16 mice simultaneously. I've considered using Mapnode to wrap up the infosource node, but I'm concerned that that would be using map node wrongly since ultimately it will reduce the branches into 1 which is not exactly what I'm trying to do here. Also, I'm running the workflow on my single Macbook Pro so its a small machine and from what I've read about the grid engines, most of them are only meant for large computing clusters, so it seems like grid engines can't help here. Any ideas or suggestions to enable simultaneity would be greatly appreciated!
2. This question is more of a conceptual one. I noticed that the workflow executed for all 16 mice in a random manner that did not follow the mice subject numbers. For example, the workflow would execute first on mice 3, then go on to mice 9 then mice 6 and all the way until it the last mice. Is this normal behavior, and is there any reason why it behaves as such? Because in the source code for my workflow, I listed the mice numbers in the infosource iterables in a nice sequence [1,2,3...,16] so I always thought that the workflow, since it ran sequentially, would follow this sequence too.
Thank you very much!
Best regards,
Augustine