running for a given host. This works by creating a file called
CGI_<HOSTID> in the cgi-bin/ directory, and using Posix advisory file
locking. I have been testing this code for three days and am seeing
*some* invocations of this. David, I'll send details to the dev mailing
list or talk with you about it later this week. Note: this code probably
can be removed in the future, when the core client problems are fixed.
Also note: I don't know if this is compatible with the fast cgi sched.
svn path=/trunk/boinc/; revision=6172
scheduler, and fails to get work because there are N secs
of pending work, then send a delay request of min(3600, N/5) secs.
Otherwise the same host was coming back every hour, without being able
to get additional work.
Implemented by adding a method set_delay() to
SCHEDULER_REQUEST. This sets the delay to the maximum of the
previous requested delay or the current requested delay. The
delay is NEVER set longer than two days.
svn path=/trunk/boinc/; revision=5437
- Ignore CPU limitations and resource share entirely, IF
a host:
(1) has no work for this project
(2) has no results in this sched reply
This ensures that any host that wants to do work will at least
get *something*. It liberalizes slightly David A's approach
from 14 Feb 2005. Eliminate use_time_stats from wreq structure.
- Scheduler changes (locality scheduling only):
- Improve return value info for some functions.
- Modify send_old_work() to accept a t_min < t < t_max time range
- New sched locality algorithm to send work to hosts with no files.
Send oldest result in the time range A < t < B where
B = locality_scheduling_timeout/2
A = B - rand*locality_scheduling_timeout/2
Here rand is a uniformly distributed random number in [0,1].
- When an unsent result is older than locality_scheduling_timeout, no
longer send it to the FIRST host that requests work. Instead send
it to the first host which has a connection speed > 100kb/s.
- Fix file deletion. Previously we were deleting files from hosts
when they got no work for that file. But this might have been
because the work was infeasible (cpu time). Now delete files
from host ONLY if there is no work remaining for that file.
svn path=/trunk/boinc/; revision=5434