|
Multi-threaded
Supervisor
At the heart of Qube! is a multi-threaded Supervisor with
the ability to manage thousands of jobs simultaneously. The
multi-threaded architecture is highly-available, low-maintenance,
and extremely stable. Adding more threads to the Supervisor
not only improves performance, but makes Qube! scalable to
virtually any size production.
Event-driven
queuing
Event-driven queuing is the patent-pending technology underlying
the Qube! Supervisor. This event-driven architecture provides
instantaneous response to job submission and dispatch to workers.
In addition, the event-model supports the attachment of arbitrary
callbacks via the Qube! API for unlimited customization options.
Events can then trigger other events or external interactions
with applications.
Custom
job types
Qube! comes with a number of custom application pipelines,
including Maya?, SOFTIMAGE?|XSI?, 3ds Max?, and Nuke?. Each
pipeline contains a submission form for the Qubic GUI, a command
line submission tool, a submission GUI integrated into the
application itself, and a backend execution module specifically
developed to interface directly with the application. The
custom pipelines reduce the time for integrating internal
production pipelines with Qube! by including ready-made interfaces
and execution backends. Since these job types are mostly constructed
as open architecture scripts, they can be further customized,
on-site. The direct application interface enables the backend
to best utilize Qube! features like the work agenda and to
optimize performance by not reopening files any more than
necessary.
Numeric
priority
Jobs can be assigned a numeric priority. Jobs with the higher
priority will run ahead of jobs with lower priority, which
minimizes production bottlenecks and ensures that the system
handles the important jobs first.
Host
clustering priority
Hosts can be grouped into hierarchies called "clusters."
Jobs that are submitted to a particular level of the hierarchy
will have higher priority than jobs submitted to a different
level, thereby maximizing the efficiency of the farm while
maintaining host allocations between departments or projects.
Priority-based
preemption
Jobs running at low priority can be preempted by jobs with
higher priority. Depending upon configuration, jobs will be
placed back into the queue for later dispatch immediately
or when they finish the frame they were working on. This ensures
that only the highest priority jobs are running. Additionally,
this enables Qube! to quickly adjust when work priorities
change.
Centralized
worker configuration
The Supervisor controls the configuration of each worker via
a single freeform configuration file that enables workers
to be updated with a single administrative command. This saves
time and effort and makes the modification of worker configuration
much easier to maintain.
Worker
locking
Calendar- and screen saver-based worker locking enables users
to add desktop hosts to the farm when they are needed. Worker
locking provides a mechanism by which those desktops can be
added to the farm at a moments notice, or by a set schedule,
or even when they're not in use.
Global
resources
Global resources keep track of arbitrary resources across
entire systems. By configuring the system to monitor and allocate
a global resource, jobs can be constrained without the loss
of rendering due to application failure.
Customizable
GUI application
The Qubic GUI interface is a powerful, customizable multi-purpose
tool for users and administrators. It is used to monitor and
control jobs, and (for administrators) to lock and unlock
render farm hosts. Operating Qube! from a common GUI helps
creative teams stay productive as users do not have to learn
command line tools to use the system.
Worker
heartbeat
Each worker automatically pings the Supervisor at regular
intervals in order to report status. The Supervisor uses this
information to keep a list of "live" hosts to which
it can send jobs. Administrators do not need to configure
the Supervisor with explicit lists of hosts. The Supervisor
can also report hosts as "down" when it misses a
worker heartbeat. This makes it easier for administrators
to keep up-to-the-minute tabs on the state of the farm.
Offline
host reacquisition
The Supervisor will periodically update the state of all hosts
automatically, and re-acquire hosts that have not checked
in for some time. This saves time for busy administrators.
User-based
permissions
Individual users can be granted or denied the various Qube!
capabilities, such as job manipulation. This important security
feature prevents users from manipulating or even killing other
users' jobs.
Windows
drive mapping
Qube! analyzes the drive mappings at submit time, stores them
with the job, and when the job executes, automatically creates
the same mappings. This feature is useful to sites that establish
different drive maps for each user. Files don't need to be
copied to specific file systems available to the render farm
- they can remain on the file system mapped to each user instead.
|