From 212fb765e9e5c1fbbaa27aedb01d877ccce0e610 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Tue, 6 Apr 2010 23:48:35 +0000 Subject: [PATCH] - validator: detect jobs that used GPU app but fell back to CPU (SETI@home does this if GPU initialization fails). Treat these like CPU apps for credit purposes. svn path=/trunk/boinc/; revision=21130 --- checkin_notes | 8 ++++++++ sched/credit.cpp | 14 ++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/checkin_notes b/checkin_notes index 486582a2da..3b2b7262b4 100644 --- a/checkin_notes +++ b/checkin_notes @@ -2554,3 +2554,11 @@ David 6 Apr 2010 sched_send.cpp client/ cs_notices.cpp + +David 6 Apr 2010 + - validator: detect jobs that used GPU app but fell back to CPU + (SETI@home does this if GPU initialization fails). + Treat these like CPU apps for credit purposes. + + sched/ + credit.cpp diff --git a/sched/credit.cpp b/sched/credit.cpp index a3222835e0..8cdf5aeec5 100644 --- a/sched/credit.cpp +++ b/sched/credit.cpp @@ -649,6 +649,20 @@ int get_pfc( return 0; } + // temporary kludge for SETI@home: + // if GPU initialization fails the app falls back to CPU. + // + if (strstr(r.stderr_out, "Device Emulation (CPU)")) { + if (config.debug_credit) { + log_messages.printf(MSG_NORMAL, + "[credit] [RESULT#%d] CUDA app fell back to CPU\n", + r.id + ); + } + pfc = wu.rsc_fpops_est; + return 0; + } + int gavid = generalized_app_version_id(r.app_version_id, r.appid); retval = hav_lookup(hav, r.hostid, gavid); if (retval) return retval;