Skip to content
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

Deamon worker #75

Open
gpetretto opened this issue Feb 19, 2024 · 1 comment
Open

Deamon worker #75

gpetretto opened this issue Feb 19, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@gpetretto
Copy link
Contributor

In connection with the idea of quickly executing short/small jobs (materialsproject/jobflow#546), I was thinking that in some cases the overhead of all the procedure of uploading, submitting, checking of the job can be avoided. Right now the worker types are local and remote and I was considering adding a worker of type daemon. Meaning that the Job will be executed directly in the process of the daemon. I am not sure if this should be a type that a user can configure, or an internal worker that is always present.
The pros that I see are:

  • quick execution for small jobs
  • avoiding useless connections to remote host
  • avoiding dumping input output files locally or remotely

Cons I could think of:

  • it could block (part of) the Runner if a Job gets stuck or if lasts longer than expected.
  • little control on the process: there will be no way of killing it if needed, unless killing the daemon altogether
  • more momory and CPU consumed by the daemon.

I would like to gather a few comments before deciding if it is worth implementing this feature.

@gpetretto gpetretto added the enhancement New feature or request label Feb 19, 2024
@Andrew-S-Rosen
Copy link
Collaborator

In jobflow + FireWorks, the Response(replace) action was its own job, which I always found a bit cumbersome (but understandable from a workflow perspective). If that's the same in jobflow-remote, this seems like an excellent candidate to have automatically run via the daemon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants