boinc/doc/flow.html

42 lines
1.5 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html lang="en">
<head>
<title>Compute Model: Work Distribution</title>
<meta name="generator" content="BBEdit 6.1.2">
</head>
<body>
<h2>Compute Model: Work Distribution</h2>
<p>
Results are not necessarily dispatched one at a time. Instead, each
participant host maintains an estimate of the amount of work remaining
(i.e. the time until one of its processors will be idle). Each host also
has two scheduling parameters, the <b>high-water mark</b> and the
<b>low-water mark</b> (these are part of the host's "preferences",
discussed later).
</p>
<p>
Normally the work remaining is between the high- and low-water
marks. When the work remaining reaches the low-water mark, the core
client contacts one or more scheduling servers, and attempts to get
enough work to exceed the high-water mark. The scheduling server sends a
maximum of four weeks of work. If a work unit is not feasible for a host
because it consumes too many system resources, the scheduling server
will not send that work unit.
</p>
<p>
The amount of work (measured in FP/int ops) sent in a single
scheduling RPC can be limited by the project, on a per-application
basis.
</p>
<p>
This scheme allows hosts that are sporadically connected (because
they're portable or have modem-based connections) to avoid becoming idle
due to lack of work.
</p>
<p>
<b>To do</b>: per-workunit flag saying to return the result ASAP?
</p>
</body>
</html>