2002-08-19 18:43:10 +00:00
|
|
|
<title>Compute Model: Workunits</title>
|
2002-07-29 19:01:38 +00:00
|
|
|
<h2>Compute Model: Workunits</h2>
|
2002-04-30 22:22:54 +00:00
|
|
|
<p>
|
2002-08-19 18:43:10 +00:00
|
|
|
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:
|
2002-07-29 19:01:38 +00:00
|
|
|
</p>
|
2002-04-30 22:22:54 +00:00
|
|
|
<ul>
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> Its application.
|
|
|
|
<li> Its name (unique across all workunits in the project).
|
|
|
|
<li> An XML document describing its input files and other parameters
|
2002-05-17 22:33:57 +00:00
|
|
|
(see below).
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> The estimated resource requirements of the work unit
|
2002-04-30 22:22:54 +00:00
|
|
|
(computation, memory, disk space, network traffic).
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> Counts of how many times this workunit should be dispatched, how
|
2002-07-29 19:01:38 +00:00
|
|
|
many times it has been dispatched, how many results have been returned,
|
|
|
|
and how many failures have occurred.
|
2002-05-17 22:33:57 +00:00
|
|
|
</ul>
|
|
|
|
<p>
|
2002-08-19 18:43:10 +00:00
|
|
|
The inputs to a workunit are described by an XML document of the form
|
2002-05-17 22:33:57 +00:00
|
|
|
<pre>
|
2002-07-29 19:01:38 +00:00
|
|
|
[ <file_info>...</file_info> ]
|
2002-05-17 22:33:57 +00:00
|
|
|
[ ... ]
|
2002-07-29 19:01:38 +00:00
|
|
|
<workunit>
|
|
|
|
<name>foobar</name>
|
|
|
|
<app_name>blah</app_name>
|
|
|
|
[ <version_num>1</version_num> ]
|
|
|
|
[ <command_line>-flags xyz</command_line> ]
|
|
|
|
[ <env_vars>name=val&name=val</env_vars> ]
|
|
|
|
[ <file_ref>...</file_ref> ]
|
2002-05-17 22:33:57 +00:00
|
|
|
[ ... ]
|
2002-07-29 19:01:38 +00:00
|
|
|
<workunit>
|
2002-08-19 18:43:10 +00:00
|
|
|
</pre>
|
|
|
|
The components are:
|
2002-05-17 22:33:57 +00:00
|
|
|
<ul>
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> The <b><name></b> element is the name of the workunit.
|
|
|
|
<li> The <b><app_name></b> element is the name of the
|
2002-07-29 19:01:38 +00:00
|
|
|
application.
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> The <b><version_num></b> element is ???.
|
|
|
|
<li> The <b><command_line></b> element, if present, is the
|
2002-07-29 19:01:38 +00:00
|
|
|
command-line arguments to be passed to the main program.
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> The <b><env_vars></b> element, if present, is a list of
|
2002-07-29 19:01:38 +00:00
|
|
|
environment variables to be passed to the main program.
|
2002-08-19 18:43:10 +00:00
|
|
|
<li> Each <b><file_ref></b> element describes a <a
|
2002-07-29 19:01:38 +00:00
|
|
|
href="files.html">reference</a> to an input file, each of which is
|
|
|
|
described by a <b><file_info></b> element.
|
2002-04-30 22:22:54 +00:00
|
|
|
</ul>
|
|
|
|
<p>
|
2002-08-19 18:43:10 +00:00
|
|
|
A workunit is associated with an application, not with a particular
|
|
|
|
version or set of versions???.
|
|
|
|
If the format of your input data changes in
|
2002-07-29 19:01:38 +00:00
|
|
|
a way that is incompatible with older versions, you must create a new
|
2002-08-19 18:43:10 +00:00
|
|
|
application.
|
|
|
|
This can often be avoided by using XML data format.
|
2002-04-30 22:22:54 +00:00
|
|
|
<p>
|
2002-08-19 18:43:10 +00:00
|
|
|
The <a href="tools.html">create_work</a> utility program provides a
|
2002-07-29 19:01:38 +00:00
|
|
|
simplified interface for creating workunits.
|