boinc/doc/work.html

55 lines
1.9 KiB
HTML

<title>Workunits</title>
<body bgcolor=ffffff>
<h2>Workunits</h2>
<p>
A <b>workunit</b> describes a computation to be performed.
Workunits are maintained in the <b>workunit</b> table in the BOINC DB.
The attributes of a workunit include:
</p>
<ul>
<li> Its name (unique across all workunits in the project).
<li> Its application.
<li> An XML document describing its input files and other parameters
(see below).
<li> The estimated resource requirements of the work unit
(computation, memory, disk space).
<li> A <b>delay bound</b>: upper bound on how long
an instance of this work unit should take to complete.
This limits what hosts the workunit is sent to,
and it's used to assign result deadlines and
times for retrying results.
</ul>
<p>
The inputs to a workunit are described by an XML document of the form
<pre>
[ &lt;file_info&gt;...&lt;/file_info&gt; ]
[ ... ]
&lt;workunit&gt;
&lt;app_name&gt;blah&lt;/app_name&gt;
[ &lt;command_line&gt;-flags xyz&lt;/command_line&gt; ]
[ &lt;env_vars&gt;name=val&amp;name=val&lt;/env_vars&gt; ]
[ &lt;file_ref&gt;...&lt;/file_ref&gt; ]
[ ... ]
&lt;workunit&gt;
</pre>
The components are:
<ul>
<li> The <b>&lt;command_line&gt;</b> element, if present, is the
command-line arguments to be passed to the main program.
<li> The <b>&lt;env_vars&gt;</b> element, if present, is a list of
environment variables to be passed to the main program.
<li> Each <b>&lt;file_ref&gt;</b> element describes a <a
href="files.html">reference</a> to an input file, each of which is
described by a <b>&lt;file_info&gt;</b> element.
</ul>
<p>
A workunit is associated with an application, not with a particular
version or range of versions.
If the format of your input data changes in
a way that is incompatible with older versions,
you must create a new application.
This can often be avoided by using XML data format.
<p>
The <a href="tools_work.html">create_work</a> utility program provides a
simplified interface for creating workunits.