Direct Drive provides a method to reduce latency of job start times and improved
scaling as more base queues are added.
Accelerator Plus and FlowTracer utilize a Direct Drive mechanism in
vovwxd to bypass the driver script and speed up tasker
requests into the base queue. The WXLauncher tasker is no longer required and the
use of launcher jobs is avoided. The call backs defined in the
vovnc.tcl script are no longer active, although a future
version may reinstate some of them.
Note: Direct Drive only works using an NC base
queue 2021.1.1 or higher.
-
Set up a WX queue with one or more base NC queues.
-
In the vovwxd
config.tcl file, set the following parameters:
set CONFIG(plugin) "libvovaccel.so"
set CONFIG(driver_script) "vovaccel.tcl"
When a request is issued, vovwxd will
create a copy of the local bucket in the base queue. This bucket will appear as "foreign
bucket" in the base queue. Bucket objects now have new fields to accommodate the foreign
buckets: isforeign, wxbucketid, and
wxqueue. These can be queried with vovselect.
Note: DirectDrive uses a different format of a driver script.
The CONFIG(driver_script) parameter must specify an appropriate script. An
example is available in
$VOVDIR/common/etc/config/vovwxd/vovaccel.tcl.
set CONFIG(driver_script) "vovaccel.tcl"
Currently
only two procedures are supported: OnProcessBucket BUCKETINFO (for filtering
buckets) and OnConfigLoaded(CONFIG), which is called when the config file is
modified.