-
Notifications
You must be signed in to change notification settings - Fork 17
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
DOCS: Add to Controller
section of tutorial
#193
Comments
Hi Chris, yes, this isn't very clear so good that you bring it up. ProcessLauncher and CommunicatorWhen desining LoopCommunicator and futuresThis has been a source of pain and confusion for several of us and so if you (with a fresh pair of eyes) can see a way to untangle this suggestions are very welcome. We had to have a host of tornado/asyncio/concurrent.futures stuff which necessitated some unfortunate juggling of different types of futures but this is somewhat streamlined now. So, here's the current state of play (as best I can remember): The Sorry if this is all a little complicated but as I say, we struggled to simplify this pinch point (without breaking something else). Hope that helps! |
Thanks @muhrin thats really helpful. |
It's as clear as mud exactly the best practice for setting up and using controllers (outside of aiida-core), and would be good to add some more toy examples to the tutorial.
The test suite does not really provide much clarification in this matter and there's some open questions for me.
For example, you can launch a process by adding a
ProcessLauncher
to the controller, but it does not add the communicator to the created process, and so you cannot control it after launch.Also some clarification on the interplay between kiwipy and plumpy futures, and the use of
LoopCommunicator
andunwrap_kiwi_future
, etcThe text was updated successfully, but these errors were encountered: