A Survey on Hardware and Software Support for Thread Level Parallelism
Somnath Mazumdar, Roberto Giorgi

TL;DR
This survey reviews hardware and software mechanisms for thread level parallelism, highlighting diverse models, hardware support, and management issues to improve multicore system performance.
Contribution
It provides a comprehensive overview of current solutions and challenges in hardware and software support for thread management in multicore systems.
Findings
Hybrid programming models are promising for heterogeneous hardware.
Hardware support at runtime significantly impacts system performance.
Software support enhances deterministic behavior during thread execution.
Abstract
To support growing massive parallelism, functional components and also the capabilities of current processors are changing and continue to do so. Todays computers are built upon multiple processing cores and run applications consisting of a large number of threads, making runtime thread management a complex process. Further, each core can support multiple, concurrent thread execution. Hence, hardware and software support for threads is more and more needed to improve peak-performance capacity, overall system throughput, and has therefore been the subject of much research. This paper surveys, many of the proposed or currently available solutions for executing, distributing and managing threads both in hardware and software. The nature of current applications is diverse. To increase the system performance, all programming models may not be suitable to harness the built-in massive…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Interconnection Networks and Systems · Embedded Systems Design Techniques
