X")."
element in a scheduler RPC request message.
This asks the scheduler to return enough work to
keep all the host's processors busy for X seconds,
given the host's typical usage
(i.e. the fraction of time it's turned off
or BOINC is suspended, and the other processes that it executes).
BOINC's work distribution policy addresses the
(sometimes conflicting) goals of keeping hosts as busy as possible,
while minimizing the impact of
- Hosts that repeatedly return results with error outcomes,
due to a host-specific problem.
- Malicious participants who attempt to obtain multiple
results of the same workunit,
in an attempt to obtain unearned credit
or have erroneous results accepted as correct.
Work distribution is constrained by a number of rules:
- A result is sent only if an application version
is available for the host's platform.
If the application's min_version field is nonzero,
the version number must at list this value.
-
A result is not sent if its disk or memory requirements
are not met by the host.
-
A result is not sent if the estimated latency
(based on the host's CPU speed and usage parameters)
exceeds the workunit's latency bound.
-
A result is not sent if the project has specified a
one result per user per workunit
flag, and a result of the same workunit has already been
sent to a host belonging to the same user.
-
A result is not sent if the project has specified a
daily result quota per host,
and the host has already been sent that many results.
-
A project can specify a limit on the
number of results sent per RPC.
-
A result is not sent if
homogeneous redundancy
is enabled and another result of the same workunit
has been sent to a different type of host.
In general, the BOINC scheduler responds to a work request
by enumerating unsent results from the database,
filtering them by the above criteria,
sending them to the host,
and continuing until requested duration X is reached.
For projects that have very large input files,
each of which is used by many workunit,
BOINC offers an alternative work distribution policy
called locality scheduling.
";
page_tail();
?>