- client: fix bug where client runs too many CPU jobs

svn path=/trunk/boinc/; revision=18999
This commit is contained in:
David Anderson 2009-09-03 14:04:35 +00:00
parent e475c64a3b
commit a5821203cc
2 changed files with 15 additions and 9 deletions

View File

@ -7488,3 +7488,9 @@ David 2 Sept 2009
client_state.cpp
cpu_sched.cpp
scheduler_op.cpp
David 2 Sept 2009
- client: fix bug where client runs too many CPU jobs
client/
cpu_sched.cpp

View File

@ -1158,6 +1158,15 @@ bool CLIENT_STATE::enforce_schedule() {
// decide if we're already using too many CPUs to run this job
//
if (!rp->uses_coprocs()) {
if (ncpus_used >= ncpus) {
if (log_flags.cpu_sched_debug) {
msg_printf(rp->project, MSG_INFO,
"[cpu_sched_debug] all CPUs used, skipping %s",
rp->name
);
}
continue;
}
if (running_edf_scheduled_job) {
// if we're running an EDF job,
// don't use more than 150% of #CPUs.
@ -1175,15 +1184,6 @@ bool CLIENT_STATE::enforce_schedule() {
} else {
// Otherwise saturate CPUs.
//
if (ncpus_used >= ncpus) {
if (log_flags.cpu_sched_debug) {
msg_printf(rp->project, MSG_INFO,
"[cpu_sched_debug] all CPUs used, skipping %s",
rp->name
);
}
continue;
}
}
}