mirror of https://github.com/BOINC/boinc.git
55 lines
1.9 KiB
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>
|
|
[ <file_info>...</file_info> ]
|
|
[ ... ]
|
|
<workunit>
|
|
<app_name>blah</app_name>
|
|
[ <command_line>-flags xyz</command_line> ]
|
|
[ <env_vars>name=val&name=val</env_vars> ]
|
|
[ <file_ref>...</file_ref> ]
|
|
[ ... ]
|
|
<workunit>
|
|
</pre>
|
|
The components are:
|
|
<ul>
|
|
<li> The <b><command_line></b> element, if present, is the
|
|
command-line arguments to be passed to the main program.
|
|
<li> The <b><env_vars></b> element, if present, is a list of
|
|
environment variables to be passed to the main program.
|
|
<li> Each <b><file_ref></b> element describes a <a
|
|
href="files.html">reference</a> to an input file, each of which is
|
|
described by a <b><file_info></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.
|