mirror of https://github.com/BOINC/boinc.git
SCHED: Removed claimed credit sanity check because GPU machines often have host
scales that cause it to fail. That prevents host_app_version PFCs not to be updated for perfectly reasonable credit claims. Since there is a max credit granted this mechanism is unneccesary, anyway.
This commit is contained in:
parent
ee4d0b507c
commit
60c7814250
|
@ -593,19 +593,25 @@ int get_pfc(
|
||||||
double tmp_scale = (avp && (r.app_version_id>1) && avp->pfc_scale) ? (avp->pfc_scale) : 1.0;
|
double tmp_scale = (avp && (r.app_version_id>1) && avp->pfc_scale) ? (avp->pfc_scale) : 1.0;
|
||||||
|
|
||||||
if (raw_pfc*tmp_scale > wu.rsc_fpops_bound) {
|
if (raw_pfc*tmp_scale > wu.rsc_fpops_bound) {
|
||||||
|
// This sanity check should be unnecessary becuase we have a maximum
|
||||||
|
// credit grant limit. With anonymous GPU apps the sanity check often fails
|
||||||
|
// because anonymous GPU scales are often of order 0.01. That prevents
|
||||||
|
// PFC averages from being updated. So I've removed the return
|
||||||
|
// statement.
|
||||||
char query[256], clause[256];
|
char query[256], clause[256];
|
||||||
pfc = wu_estimated_pfc(wu, app);
|
pfc = wu_estimated_pfc(wu, app);
|
||||||
if (config.debug_credit) {
|
if (config.debug_credit) {
|
||||||
log_messages.printf(MSG_NORMAL,
|
log_messages.printf(MSG_NORMAL,
|
||||||
"[credit] [RESULT#%u] sanity check failed: %.2f>%.2f, return %.2f\n",
|
"[credit] [RESULT#%u] WARNING: sanity check failed: %.2f>%.2f, return %.2f\n",
|
||||||
r.id, raw_pfc*tmp_scale*COBBLESTONE_SCALE,
|
r.id, raw_pfc*tmp_scale*COBBLESTONE_SCALE,
|
||||||
wu.rsc_fpops_bound*COBBLESTONE_SCALE, pfc*COBBLESTONE_SCALE
|
wu.rsc_fpops_bound*COBBLESTONE_SCALE, pfc*COBBLESTONE_SCALE
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
sprintf(query, "consecutive_valid=0");
|
// This was a bad idea because it prevents HAV.pfc from being updated.
|
||||||
sprintf(clause, "host_id=%d and app_version_id=%d", r.hostid, gavid);
|
// sprintf(query, "consecutive_valid=0");
|
||||||
retval = hav.update_fields_noid(query, clause);
|
// sprintf(clause, "host_id=%d and app_version_id=%d", r.hostid, gavid);
|
||||||
return retval;
|
// retval = hav.update_fields_noid(query, clause);
|
||||||
|
// return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (r.app_version_id < 0) {
|
if (r.app_version_id < 0) {
|
||||||
|
|
Loading…
Reference in New Issue