File Download

There are no files associated with this item.

  Links for fulltext
     (May Require Subscription)
Supplementary

Article: Analysis of Optimal Thread Pool Size

TitleAnalysis of Optimal Thread Pool Size
Authors
Issue Date2000
PublisherAssociation for Computing Machinery, Inc.
Citation
Operating Systems Review, 2000, v. 34 n. 2, p. 42-55 How to Cite?
AbstractThe success of e-commerce, messaging middleware, and other Internet-based applications depends in part on the ability of network servers to respond in a timely and reliable manner to simultaneous service requests. Multithreaded systems, due to their efficient use of system resources and the popularity of shared-memory multi-processor architectures, have become the server implementation of choice. However, creating and destroying a thread is far from free, requiring run-time memory allocation and deallocation. These overheads become especially onerous during periods of high load and can be a major factor behind system slowdowns. A thread-pool architecture addresses this problem by prespawning and then managing a pool of threads. Threads in the pool are reused, so that thread creation and destruction overheads are incurred only once per thread, and not once per request. However, efficient thread management for a given system load highly depends on the thread pool size, which is currently determined heuristically. In this paper, we characterize several system resource costs associated with thread pool size. If the thread pool is too large, and threads go unused, then processing and memory resources are wasted maintaining the thread pool. If the thread pool is too small, then additional threads must be created and destroyed on the fly to handle new requests. We analytically determine the optimal thread pool size to maximize the expected gain of using a thread.
Persistent Identifierhttp://hdl.handle.net/10722/224291
ISSN
2020 SCImago Journal Rankings: 0.180

 

DC FieldValueLanguage
dc.contributor.authorLing, Y-
dc.contributor.authorMullen, T-
dc.contributor.authorLin, X-
dc.date.accessioned2016-03-31T07:08:58Z-
dc.date.available2016-03-31T07:08:58Z-
dc.date.issued2000-
dc.identifier.citationOperating Systems Review, 2000, v. 34 n. 2, p. 42-55-
dc.identifier.issn0163-5980-
dc.identifier.urihttp://hdl.handle.net/10722/224291-
dc.description.abstractThe success of e-commerce, messaging middleware, and other Internet-based applications depends in part on the ability of network servers to respond in a timely and reliable manner to simultaneous service requests. Multithreaded systems, due to their efficient use of system resources and the popularity of shared-memory multi-processor architectures, have become the server implementation of choice. However, creating and destroying a thread is far from free, requiring run-time memory allocation and deallocation. These overheads become especially onerous during periods of high load and can be a major factor behind system slowdowns. A thread-pool architecture addresses this problem by prespawning and then managing a pool of threads. Threads in the pool are reused, so that thread creation and destruction overheads are incurred only once per thread, and not once per request. However, efficient thread management for a given system load highly depends on the thread pool size, which is currently determined heuristically. In this paper, we characterize several system resource costs associated with thread pool size. If the thread pool is too large, and threads go unused, then processing and memory resources are wasted maintaining the thread pool. If the thread pool is too small, then additional threads must be created and destroyed on the fly to handle new requests. We analytically determine the optimal thread pool size to maximize the expected gain of using a thread.-
dc.languageeng-
dc.publisherAssociation for Computing Machinery, Inc. -
dc.relation.ispartofOperating Systems Review-
dc.rightsOperating Systems Review. Copyright © Association for Computing Machinery, Inc.-
dc.rights©ACM, YYYY. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in PUBLICATION, {VOL#, ISS#, (DATE)} http://doi.acm.org/10.1145/nnnnnn.nnnnnn-
dc.titleAnalysis of Optimal Thread Pool Size-
dc.typeArticle-
dc.identifier.emailLin, X: xlin@hkueee.hku.hk-
dc.identifier.doi10.1145/346152.346320-
dc.identifier.scopuseid_2-s2.0-0039929595-
dc.identifier.hkuros54441-
dc.identifier.volume34-
dc.identifier.issue2-
dc.identifier.spage42-
dc.identifier.epage55-
dc.publisher.placeUnited States-
dc.identifier.issnl0163-5980-

Export via OAI-PMH Interface in XML Formats


OR


Export to Other Non-XML Formats