diff --git a/checkin_notes b/checkin_notes
index cf9c5ce487..c11b80f7ac 100644
--- a/checkin_notes
+++ b/checkin_notes
@@ -6959,3 +6959,15 @@ David 17 Aug 2009
lib/
coproc.cpp,h
+
+David 17 Aug 2009
+ - client/manager: add ATI stuff to GUI RPCs and manager display
+
+ client/
+ cs_statefile.cpp
+ schedule_op.cpp
+ clientgui/
+ DltItemProperties.cpp
+ lib/
+ gui_rpc_client.h
+ gui_rpc_client_ops.cpp
diff --git a/client/cs_statefile.cpp b/client/cs_statefile.cpp
index d737b8dc59..460bb5eda6 100644
--- a/client/cs_statefile.cpp
+++ b/client/cs_statefile.cpp
@@ -865,13 +865,15 @@ int CLIENT_STATE::write_state_gui(MIOFILE& f) {
"%d\n"
"%d\n"
"%d\n"
- "%d\n",
+ "%d\n"
+ "%d\n",
get_primary_platform(),
core_client_version.major,
core_client_version.minor,
core_client_version.release,
executing_as_daemon?1:0,
- coproc_cuda?1:0
+ coproc_cuda?1:0,
+ coproc_ati?1:0
);
for (i=0; icuda_backoff_interval));
+ }
+ if (pDoc->state.have_ati) {
+ addProperty(_("ATI GPU work fetch priority"),wxString::Format(wxT("%0.2f"), project->ati_debt));
+ x = project->ati_backoff_time - dtime();
+ if (x<0) x = 0;
+ addProperty(_("ATI GPU work fetch deferred for"), FormatTime(x));
+ addProperty(_("ATI GPU work fetch deferral interval"), FormatTime(project->ati_backoff_interval));
}
addProperty(_("Duration correction factor"),wxString::Format(wxT("%0.4f"), project->duration_correction_factor));
}
diff --git a/lib/gui_rpc_client.h b/lib/gui_rpc_client.h
index 4be9c32467..e677a8198e 100644
--- a/lib/gui_rpc_client.h
+++ b/lib/gui_rpc_client.h
@@ -129,6 +129,9 @@ public:
double cuda_debt;
double cuda_backoff_time;
double cuda_backoff_interval;
+ double ati_debt;
+ double ati_backoff_time;
+ double ati_backoff_interval;
double duration_correction_factor;
bool master_url_fetch_pending; // need to fetch and parse the master URL
@@ -354,6 +357,7 @@ public:
VERSION_INFO version_info; // populated only if talking to pre-5.6 CC
bool executing_as_daemon; // true if Client is running as a service / daemon
bool have_cuda;
+ bool have_ati;
CC_STATE();
~CC_STATE();
diff --git a/lib/gui_rpc_client_ops.cpp b/lib/gui_rpc_client_ops.cpp
index 988c8976f9..e6dcd9f42a 100644
--- a/lib/gui_rpc_client_ops.cpp
+++ b/lib/gui_rpc_client_ops.cpp
@@ -245,6 +245,9 @@ int PROJECT::parse(MIOFILE& in) {
if (parse_double(buf, "", cuda_debt)) continue;
if (parse_double(buf, "", cuda_backoff_time)) continue;
if (parse_double(buf, "", cuda_backoff_interval)) continue;
+ if (parse_double(buf, "", ati_debt)) continue;
+ if (parse_double(buf, "", ati_backoff_time)) continue;
+ if (parse_double(buf, "", ati_backoff_interval)) continue;
if (parse_double(buf, "", duration_correction_factor)) continue;
if (parse_bool(buf, "master_url_fetch_pending", master_url_fetch_pending)) continue;
if (parse_int(buf, "", sched_rpc_pending)) continue;
@@ -297,6 +300,9 @@ void PROJECT::clear() {
cuda_debt = 0;
cuda_backoff_time = 0;
cuda_backoff_interval = 0;
+ ati_debt = 0;
+ ati_backoff_time = 0;
+ ati_backoff_interval = 0;
duration_correction_factor = 0;
master_url_fetch_pending = false;
sched_rpc_pending = 0;
@@ -693,6 +699,7 @@ void CC_STATE::clear() {
platforms.clear();
executing_as_daemon = false;
have_cuda = false;
+ have_ati = false;
}
PROJECT* CC_STATE::lookup_project(string& str) {
@@ -1129,6 +1136,7 @@ int RPC_CLIENT::get_state(CC_STATE& state) {
if (parse_bool(buf, "executing_as_daemon", state.executing_as_daemon)) continue;
if (parse_bool(buf, "have_cuda", state.have_cuda)) continue;
+ if (parse_bool(buf, "have_ati", state.have_ati)) continue;
if (match_tag(buf, "")) {
project = new PROJECT();
project->parse(rpc.fin);