weaver(1) | Cooperative Computing Tools | weaver(1) |
weaver - workflow engine for executing distributed workflows
weaver [options] <weaverfile>
Weaver is a high level interface to makeflow. A weaver input file is written in python, with the definition of functions to be applied on sets of files. weaver interprets this input file and generates a workflow specification that can be executed by makeflow. This allows an straightforward implementation of different workflow execution patterns, such as MapReduce, and AllPairs.
/-------- +-+ Python | | ---+----/ +---------------------------------+ | | Generate DAG | Weaver +-+ v +---------------------------------+ /-------| Makeflow +---+ DAG | +--------+-----------+-----+------+ -------/ | Condor | WorkQueue | SGE | Unix +-+ | Dispatch Jobs +--------+-----------+-----+------+ | v | /------- +-+ Jobs | -------/
By default, running weaver on a <weaverfile> generates an input file for makeflow, <Makeflow>, and a directory, <_Stash>, in which intermediate files are stored.
General options:
Optimization Options:
Engine Options:
On success, returns zero. On failure, returns non-zero.
Weaver expresses common workflow patterns succinctly. For example, with only the following three lines of code we can express a map pattern, in which we convert some images to the jpeg format:
convert = ParseFunction('convert {IN} {OUT}') dataset = Glob('/usr/share/pixmaps/*.xpm') jpgs = Map(convert, dataset, '{basename_woext}.jpg')
Please refer to cctools/doc/weaver_examples for further information.
The Cooperative Computing Tools are Copyright (C) 2022 The University of Notre Dame. This software is distributed under the GNU General Public License. See the file COPYING for details.
CCTools 7.13.1 FINAL |