MPJ – Implementation
Some assumptions that have a bearing on the organization of the MPJ daemon:
- stdout (and stderr) streams from all tasks in an MPJ job are merged non-deterministically and copied to the stdout of the process that initiates the job.
- No guarantees are made about other IO operations - these are system dependent.
Rudimentary support for global checkpointing and restarting of interrupted jobs may be quite useful, although checkpointing would not happen without explicit invocation in the user-level code, or that restarting would happen automatically.