Message-ID: <514598116.8145.1711620518419.JavaMail.confluence@host3.pipelinefx.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_8144_313458201.1711620518418" ------=_Part_8144_313458201.1711620518418 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html Job Reservations

Job Reservations

Qube!'s reservation system is important for correct management o= f host resources. This is accomplished with the relationship between reserv= ations and resources.

Each host has a list of resources including system resources such as mem= ory and number of processors. Resources are integer based (meaning '1' and = '99' are valid resource counts; 'a' and '4.5' are not) and automatically de= crement/increment upon acceptance of a job. A resource can be "discove= red" by the system (eg, number of cores) or defined by admins (eg, num= ber of licenses).

The user must know whether the resource is global or host-based (see System-Wide Resource T= racking). Global resources are tracked through the entire system, for e= xample, license tracking. A host resource is local and specific to each hos= t, for example the number of cores.

Resources are defined and reserved through this syntax:

type.name=3Dquantity[,type.name=3Dquantity=E2=80=A6]

This is set on the Supervisor (for global resources, see supervisor_global_resources), on= the host (for host-based resources, see worker_resources) and/or in the job submission UI in the reser= vations field.

Specifying Quantity

Syntax Meaning
host.processors=3D1+ Dispatch to a worker with at least 1 open = slot, then occupy all currently open slots.
The
ge= neral form is host.processors=3DN+, where N is a positive integer.
host.processors=3D1* Dispatch to a worker with at least 1 open = slot and no used slots (i.e. worker must be idle!= ), then occupy all currently open slots.
The= general form is
host.processors=3DN*, where  N  is a positive integer
host.processors=3Dall Equivalent to host.processors=3D1*
host.processors=3DN-M= Dispatch to a worker with at least= N to M open slots. Upon being dispatched to a worker, it occupies as many = slots as it can, up to M, as slots become available.

Dynamic Thread Assignmen= t

When a 1+ or similar job picks up on a Worker, we don't know how many sl= ots were available or assigned to that instance. That number is made availa= ble dynamically in the running job's environment as an environment variable= , QB_JOBSLOTS=3D6, (or whatever the value) and stored in the Q= ube! database in the job's subjob table as "allocations". One use= of this could be that the job references $QB_JOBSLOTS on the command line = to specify the number of threads a renderer should use.


Examples

Reservation Explanation
"host.memory=3D200" Reserve 200MB of memory on the host
"host.processors=3D1+" Reserve all processors on a host, but at least 1= must be available in order to start
"host.processors=3D1-20"<= /td> Reserve 20 processors on a single host, but at l= east 1 must be available in order to start
"global.maya=3D1" Reserve a global resource called maya

See Also

supervisor_global_= resources
worker_resour= ces
System= -Wide Resource Tracking

 

------=_Part_8144_313458201.1711620518418--