For example, if a given machine is attached to a raid, we could give it the
extended parameters 'maxraid = 50000' and 'raid = 12345', where maxraid is the total size of the disk and raid is the amount of space currently available on that disk. To pick machines of this type when we submit a job
we specify the resource requirement: -R 'select[raid > 10000] rusage[raid=8000]' to mean "find me a machine that has more than 10G of raid space available and let me warn the cluster that I intend to make use of 8G of
it"?
Partially. There is the "host" directive in the profile file that
can change the load scheduling behavior to favor a specific machine(s) and
prevent jobs from running on certain machines altogether, or only at certains
times or below certain load averages.
Also, you could create a special job queue for certain jobs that would
require the statisfaction of certain requirements (e.g., that a certain local disk,
which might be the local raid, have a certain amount of free disk space before
the job is run.)
All in all, Queue affords some of this capacity, but is less flexible.
These problems can partially be addressed by the SQL server discussed
on the development thread.
werner.krebs@yale.edu |