On Fri, Apr 12, 2013 at 5:17 AM, Andrew Purkiss-Trew
An approach, which I have used with other software, is to signal the process to stop with the kill command. You can find the PID at the top of the phenix log, then kill -STOP PID will pause the process kill - CONT PID will restart the process. Note, I've not tried this on a Mac or with phenix, but it works under Linux.
Somewhat to my surprise, the equivalent calls in the Python API appear to work perfectly (on my Mac) for pausing and resuming jobs from the GUI when run in the default mode (as opposed to "detached" mode, but I'm pretty sure I can get that to work too). It's going to take at least a few more days to thoroughly debug, especially since a) I am rewriting the installers, and b) I desperately need to catch up on other projects, but I'm pretty confident that the next release (and in the nearer future, nightly builds) will have the requested "Pause" button. (Except on Windows, which - as usual - is broken by design.) In theory, I think the process memory will be swapped to/from disk as needed, but I haven't directly tested this. The CPU load definitely decreases when it is paused though. As a side effect, I may have also figured out how to abort jobs almost immediately instead of having to wait for print statements to interrupt the programs. Stay tuned. -Nat