The performance implications of thread management alternatives for shared-memory multiprocessors
- 1 December 1989
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. 38 (12), 1631-1644
- https://doi.org/10.1109/12.40843
Abstract
An examination is made of the performance implications of several data structure and algorithm alternatives for thread management in shared-memory multiprocessors. Both experimental measurements and analytical model projections are presented. For applications with fine-grained parallelism, small differences in thread management are shown to have significant performance impact, often posing a tradeoff between throughput and latency. Per-processor data structures can be used to to improve throughput, and in some circumstances to avoid locking, improving latency as well. The method used by processors to queue for locks is also shown to affect performance significantly. Normal methods of critical resource waiting can substantially degrade performance with moderate numbers of waiting processors. The authors present an Ethernet-style backoff algorithm that largely eliminates this effect.<>Keywords
This publication has 15 references indexed in Scilit:
- Fine-grained mobility in the Emerald systemACM Transactions on Computer Systems, 1988
- Cache coherence protocols: evaluation using a multiprocessor simulation modelACM Transactions on Computer Systems, 1986
- Parallel Processing in AdaComputer, 1986
- Adaptive load sharing in homogeneous distributed systemsIEEE Transactions on Software Engineering, 1986
- TheUNIXSystem: MultiprocessorUNIXOperating SystemsAT&T Bell Laboratories Technical Journal, 1984
- A short introduction to Concurrent EuclidACM SIGPLAN Notices, 1982
- Experience with processes and monitors in MesaCommunications of the ACM, 1980
- Modelling and analysis of distributed software systemsPublished by Association for Computing Machinery (ACM) ,1979
- Communicating sequential processesCommunications of the ACM, 1978
- EthernetCommunications of the ACM, 1976