- client: in the job scheduler, there's a check to prevent

overcommitting the CPUs if an MT is scheduled.
    Skip this check for GPU jobs.


svn path=/trunk/boinc/; revision=25835
This commit is contained in:
David Anderson 2012-07-02 17:58:33 +00:00
parent f6bd141b30
commit 430f6a0813
2 changed files with 20 additions and 10 deletions

View File

@ -4655,3 +4655,11 @@ David 1 July 2012
client/
work_fetch.cpp,h
scheduler_op.cpp
David 2 July 2012
- client: in the job scheduler, there's a check to prevent
overcommitting the CPUs if an MT is scheduled.
Skip this check for GPU jobs.
client/
cpu_sched.cpp

View File

@ -1596,18 +1596,20 @@ bool CLIENT_STATE::enforce_run_list(vector<RESULT*>& run_list) {
}
}
// don't overcommit CPUs if a MT job is scheduled
// Don't overcommit CPUs if a MT job is scheduled.
// Skip this check for GPU jobs.
//
if (scheduled_mt || (rp->avp->avg_ncpus > 1)) {
if (ncpus_used + rp->avp->avg_ncpus > ncpus) {
if (log_flags.cpu_sched_debug) {
msg_printf(rp->project, MSG_INFO,
"[cpu_sched_debug] avoid MT overcommit: skipping %s",
rp->name
);
}
continue;
if (!rp->uses_coprocs()
&& (scheduled_mt || (rp->avp->avg_ncpus > 1))
&& (ncpus_used + rp->avp->avg_ncpus > ncpus)
) {
if (log_flags.cpu_sched_debug) {
msg_printf(rp->project, MSG_INFO,
"[cpu_sched_debug] avoid MT overcommit: skipping %s",
rp->name
);
}
continue;
}
double wss = 0;