-
Notifications
You must be signed in to change notification settings - Fork 50
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
simple job shell #1335
Comments
One post-it note on the timeline added a requirement to the job shell: "stdout/err piped without KVS" |
Thanks. @trws may want to add some detail (I think that was his requirement). e.g. stdout/err piped where? what is an example use case (write to a file without transiting the kvs?) |
I suppose this is two parts, but having the ability to support the equivalent of the current The other part is generically being able to do standard output/error handling without having all of it persist in the KVS. We've worked around the issue for pilot2 by just not using those streams, or rather not letting flux see any data on them, but especially lacking KVS GC #258 it's a potentially serious bloat issue for the KVS. I rate this as secondary because, at least from my perspective, it seems this is the harder part, and having the ability to use file directed output cheaply would make this easy to work around where it would be an issue. |
Thanks @trws! That description seems pretty clear. I think we were leaning toward a single writer for output in the kvs, so that single writer could redirect to a file instead of kvs fairly simply. If the output is kept in the kvs, it could optionally be removed before the private namespace is 'linked in' to the main namespace during job completion/reaping. However, I don't think that is enough for a quick-and-dirty GC unless we also had a way to tell the KVS not to send certain data to the content store. |
Closing this stale issue since we've now got a job shell. |
Implement a simple job shell that can take as input J and Rlocal, and figure out what process to run, setting MPI rank, etc..
The role of the job shell is described in RFC 15. It runs as the user, and spawns potentially multiple user procs.
Implement PMI service for user processes.
Broadcast stdin and collect stdout, stderr back to KVS guest namespace.
The text was updated successfully, but these errors were encountered: