I want my 200 jobs to wait in a queue so that they occupy only 40 workers out of 100 workers in our cluster

2 views (last 30 days)
We have a cluster with 100 workers in our lab, and I am allowed to use up to 40 workers. The problem is that I cannot submit more than 40 jobs at once, because those extra jobs will use the idle workers of my colleagues. How can I tell MATLAB job scheduler to limit my access to only 40 workers? I don’t think the solution is setting “NumWorkersRange” to [1 40].

Accepted Answer

Edric Ellis
Edric Ellis on 30 Apr 2015
If you're using an MJS cluster, then NumWorkersRange on a single independent job is the way to do this. You'll need multiple createTask calls, a bit like this:
c = parcluster(...);
j = createJob(c, 'NumWorkersRange', [1 40]);
for idx = 1:N
createTask(j, @myFcn, numOutputArgs, {inputArgs, ...});
end
submit(j);

More Answers (0)

Categories

Find more on MATLAB Parallel Server in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!