From a2830fa140b4e47f2e315785a2a029354f77bff4 Mon Sep 17 00:00:00 2001 From: hellwig Date: Wed, 13 Feb 2013 13:11:29 +0000 Subject: [PATCH] JobClient: weighting for throughput calculation The new troughput is now calculated as: 0.5*old throughput + 0.5* the current throughput of the last job-set. This prevents excessive variations in the calculation of the new throughput. git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2079 8c4709b5-6ec9-48aa-a5cd-a96041d1645a --- src/core/efw/JobClient.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/core/efw/JobClient.cc b/src/core/efw/JobClient.cc index dd82d15e..100e2d3e 100644 --- a/src/core/efw/JobClient.cc +++ b/src/core/efw/JobClient.cc @@ -184,6 +184,7 @@ bool JobClient::sendResult(ExperimentData& result) } else { //Stop time measurement and calculate new throughput m_job_runtime.stopTimer(); + m_job_throughput = 0.5 * m_job_throughput + 0.5*(CLIENT_JOB_REQUEST_SEC/((double)m_job_runtime/m_results.size())); m_job_throughput = CLIENT_JOB_REQUEST_SEC/((double)m_job_runtime/m_results.size()); if (m_job_throughput > CLIENT_JOB_LIMIT) {