pause job on job manager

1 view (last 30 days)
Jesper Frandsen
Jesper Frandsen on 17 Feb 2011
We have the Distributed Computing Server with 60 workers. We have a mixture of short, important jobs and long-running, not-so-important jobs. Is it possible to lower priority or pause the long-running jobs in any way in the Mathworks job manager? What if we switch job manager to e.g. Oracle Grid Engine?
Thanks in advance!

Answers (1)

Sarah Wait Zaranek
Sarah Wait Zaranek on 5 Mar 2011
It is possible to change the priority of jobs in the queue, if they are not currently running. The commands are promote and demote. See documentation here:
There is a pause command. But, that will pause all jobs that are currently not running. I don't think that is what you are looking for in your question.
If a job is running, it is difficult to pause it mid-run and get the worker back for the another run while still being able to restart the paused job where it left off at another time - since MATLAB has no inherent check-pointing.
Another 3rd party scheduler (aka Oracle Grid Engine, LST, PBS) would allow to maintain a queue with a priority system - allowing shorter jobs to run first and so forth. But, it will not solve the issue with MATLAB not having built-in check-pointing.
If you put check-pointing in your code (i.e. allow it to be stop midway and restarted near the stop point), then you can use cancel to stop the job. It will free up the worker, and leave the job in th queue in the finished state. The ErrorMessage will state for the tasks: 'Task cancelled by user'.
Here is a link to the documentation on cancel: http://www.mathworks.com/help/toolbox/distcomp/cancel.html
I hope this helps.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!