From abb3d720eaf5691d8f20237f8832a7ed22d9aead Mon Sep 17 00:00:00 2001 From: zhaolei Date: Thu, 11 Oct 2007 08:20:39 +0000 Subject: 2007-10-11 Zhaolei * queue_stats.stp (qsq_utilization): Update queue account datas before calculate. (qsq_blocked): Ditto. (qsq_wait_queue_length): Ditto. (qsq_service_time): Ditto. (qsq_wait_time): Ditto. (qsq_throughput): Ditto. --- tapset/queue_stats.stp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'tapset/queue_stats.stp') diff --git a/tapset/queue_stats.stp b/tapset/queue_stats.stp index 9d89903c..5cf24c40 100644 --- a/tapset/queue_stats.stp +++ b/tapset/queue_stats.stp @@ -70,35 +70,41 @@ function qsq_start (qname) { # reset statistics for new baseline # fraction of time that any request was being serviced function qsq_utilization (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_rtime[qname]) / elapsed } # fraction of time that any request was blocked in the wait queue function qsq_blocked (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_wtime[qname]) / elapsed } # length of wait queue function qsq_wait_queue_length (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_wlentime[qname]) / elapsed } # service time (amount of time per request service) function qsq_service_time (qname, scale) { + _qs_update (qname) return (scale * qs_rlentime[qname]) / qs_dcount[qname] } # wait time (amount of time in queue + service per request) function qsq_wait_time (qname, scale) { + _qs_update (qname) return (scale * (qs_rlentime[qname] + qs_wlentime[qname])) / qs_dcount[qname] } # service rate (number of requests served per unit time) function qsq_throughput (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_dcount[qname]) / elapsed } -- cgit