Original scientific paper
https://doi.org/10.7305/automatika.54-4.465
Analysis of Sojourn Times in QBD Model of a Thread Pool
Mirko Randić
orcid.org/0000-0002-1844-0317
; Faculty of Electrical Engineering and Computing, University of Zagreb, Unska 3, HR-10000, Zagreb, Croatia
Bruno Blašković
orcid.org/0000-0001-9612-4769
; Faculty of Electrical Engineering and Computing, University of Zagreb, Unska 3, HR-10000, Zagreb, Croatia
Šandor Dembitz
orcid.org/0000-0002-0642-845X
; Faculty of Electrical Engineering and Computing, University of Zagreb, Unska 3, HR-10000, Zagreb, Croatia
Abstract
Modern Web or database servers are usually designed with a thread pool as a major component for servicing. Controlling of such servers, as well as defining adequate resource management policies, with the aim of minimizing requests’ sojourn times presuppose the existence of performance models of thread-pooled systems. In this paper a queuing model of a thread pool is formulated along with a set of underlying assumptions and definitions used. Requests are abstracted in such a way that they are characterized by service time distribution and CPU consumption parameter. The model is defined as a Quasi-Birth-and-Death (QBD) process. Stability conditions for the model are derived and an analytic method based on generating functions for calculation of expected sojourn times is presented. The analytical results thus obtained are evaluated in a developed experimental environment. The environment contains a synthetic workload generator and an instrumented server application based on a standard Java 7 ThreadPoolExecutor thread pool. Sojourn time measurements confirm the theoretical results and also give additional insight into sojourn times related to more realistic workload cases that otherwise would be difficult to analyze formally.
Keywords
Thread pool; Sojourn time; CPU-bound tasks; Quasi-Birth-and-Death process; Server application
Hrčak ID:
114768
URI
Publication date:
14.1.2014.
Visits: 1.892 *