~ubuntu-branches/ubuntu/vivid/cctools/vivid

« back to all changes in this revision

Viewing changes to makeflow/example/example.README

  • Committer: Bazaar Package Importer
  • Author(s): Michael Hanke
  • Date: 2011-05-07 09:05:00 UTC
  • Revision ID: james.westby@ubuntu.com-20110507090500-lqpmdtwndor6e7os
Tags: upstream-3.3.2
ImportĀ upstreamĀ versionĀ 3.3.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
This is a preview of the Makeflow workflow engine.
 
3
It is still under development and not fully documented yet.
 
4
 
 
5
Makeflow uses a simplified version of Makefiles to represent
 
6
workflows for distributed computing.  It is not tied to any
 
7
particular batch system, and it currently works with Unix
 
8
processes, Condor, SGE, and a custom system called Work Queue (wq).
 
9
 
 
10
The file example.makeflow in this directory contains an example
 
11
workflow that takes an image, swirls it around in 4 permutations,
 
12
and joins the results into a gif animation.
 
13
 
 
14
Looking at the source, you should see that it looks almost identical
 
15
to a Makefile.  The main difference is that Makeflow is STRICT:
 
16
You must declare all source files needed by a rule, and all of the
 
17
target files created by a rule, because Makeflow will use that
 
18
information to create batch jobs.  You cannot have a phony rule
 
19
like "clean:" because such a rule does not actually create a
 
20
file named "clean".
 
21
 
 
22
To run it on your local machine as if it were a Makefile:
 
23
    makeflow example.makeflow
 
24
 
 
25
To clean up the results of the run:
 
26
    makeflow -c example.makeflow
 
27
 
 
28
To cause Makeflow to submit jobs to Condor:
 
29
    makeflow -T condor example.makeflow
 
30
 
 
31
To submit Makeflow as a Condor job that submits more Condor jobs:
 
32
    condor_submit_makeflow example.makeflow
 
33
 
 
34
(In this configuration, makeflow behaves like dagman: it can
 
35
recover from a failure of the submissino machine.  We haven't
 
36
implemented a clean condor_rm of a makeflow yet, but it is quite doable.)
 
37
 
 
38
You will notice that a workflow can run very slowly if you submit
 
39
each batch job to a system like Condor, because it typically
 
40
takes 30 seconds or so to start each batch job running.  To get
 
41
around this limitation, we provide the Work Queue system, which
 
42
works as follows:
 
43
 
 
44
To start your Makeflow with Work Queue on port 9123:
 
45
    makeflow -T wq -p 9123 example.makeflow
 
46
 
 
47
Then, start as many workers as you like on whatever machines you
 
48
have available.  You can ssh to another machine and run:
 
49
    work_queue_worker servername 9123
 
50
 
 
51
Or, you can submit 100 workers to Condor like this:
 
52
    condor_submit_workers servername 9123 100
 
53
 
 
54
For more information, please check out our manuals and mailing list here:
 
55
http://www.cse.nd.edu/~ccl/software/help.shtml