| 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) 2005-2019 The University of Notre Dame. This software is distributed under the GNU General Public License. See the file COPYING for details.
| CCTools 8.0.0 DEVELOPMENT |