A Novel Predictive and Self -- Adaptive Dynamic Thread Pool Management

Multithreading is an efficient technique commonly used to maximize the performance of CPU. One of the most important challenges in multithreading is thread pool management. It needs to retain a proper number of threads in the pool, which minimizes the response time and maximizes the resource utilization. To achieve this goal, this paper proposes a novel trendy exponential moving average (TEMA) scheme for predicting the number of threads. Also, a prediction-based thread pool management scheme is proposed which adjusts the idle timeout period and thread pool size to effectively adapt the system to the changing environment. The experiment results show the effectiveness of the proposed approach in terms of response time and CPU usage, compared with the existing prediction-based scheme and Sun watermark.

[1]  P. A. Blight The Analysis of Time Series: An Introduction , 1991 .

[2]  Hee Yong Youn,et al.  Prediction-Based Dynamic Thread Pool Management of Agent Platform for Ubiquitous Computing , 2007, UIC.

[3]  Guillaume Pierre,et al.  Wikipedia workload analysis for decentralized hosting , 2009, Comput. Networks.

[4]  George E. P. Box,et al.  Time Series Analysis: Forecasting and Control , 1977 .

[5]  Michael K. Molloy Fundamentals of Performance Modeling , 1990, SIGMETRICS Perform. Evaluation Rev..

[6]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[7]  Xiaola Lin,et al.  Analysis of optimal thread pool size , 2000, OPSR.

[8]  DongHyun Kang,et al.  Prediction-Based Dynamic Thread Pool Scheme for Efficient Resource Usage , 2008, 2008 IEEE 8th International Conference on Computer and Information Technology Workshops.

[9]  Joseph L. Hellerstein Configuring resource managers using model fuzzing: A case study of the .NET thread pool , 2009, 2009 IFIP/IEEE International Symposium on Integrated Network Management.