Proceedings of the 36th Annual International Symposium on Computer Architecture 2009
DOI: 10.1145/1555754.1555813
|View full text |Cite
|
Sign up to set email alerts
|

Boosting single-thread performance in multi-core systems through fine-grain multi-threading

Abstract: Industry has shifted towards multi-core designs as we have hit the memory and power walls. However, single thread performance remains of paramount importance since some applications have limited thread-level parallelism (TLP), and even a small part with limited TLP impose important constraints to the global performance, as explained by Amdahl's law.In this paper we propose a novel approach for leveraging multiple cores to improve single-thread performance in a multi-core design. The proposed technique features… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
6
0

Year Published

2011
2011
2019
2019

Publication Types

Select...
3
3
1

Relationship

1
6

Authors

Journals

citations
Cited by 19 publications
(9 citation statements)
references
References 29 publications
0
6
0
Order By: Relevance
“…Obtaining addresses through partial execution of the program represents a broad class of prefetching approaches. On one extreme of the design spectrum, many short threads are launched as helpers to precompute information for data or instruction supply [4], [6], [16]- [20], [24]- [26], [29], [32], [52]- [54], [63], [65]- [67], [72], [86]- [88], [98], [106], [107], [111], [114]. Although these micro helper threads are an immensely useful concept, marshalling a very large number of micro threads can bring practical issues: i) They are largely hand crafted and carefully inserted at the right locations, perhaps after lengthy trialand-errors.…”
Section: Background and Related Workmentioning
confidence: 99%
“…Obtaining addresses through partial execution of the program represents a broad class of prefetching approaches. On one extreme of the design spectrum, many short threads are launched as helpers to precompute information for data or instruction supply [4], [6], [16]- [20], [24]- [26], [29], [32], [52]- [54], [63], [65]- [67], [72], [86]- [88], [98], [106], [107], [111], [114]. Although these micro helper threads are an immensely useful concept, marshalling a very large number of micro threads can bring practical issues: i) They are largely hand crafted and carefully inserted at the right locations, perhaps after lengthy trialand-errors.…”
Section: Background and Related Workmentioning
confidence: 99%
“…Various flavors of helper threading have been proposed in the past. Micro helper threading [4,16,21,30,43,47,48,52,53,60,73,74] launches short threads ahead of potentially stalling instructions to avoid performance bottlenecks. These threads include specific instructions (often identified via lengthy manual tuning) required to precompute address or branch direction in a timely manner.…”
Section: Helper Threadingmentioning
confidence: 99%
“…Recently multiprocessors, very long instruction word (VLIW) and multi-issue superscalar processors satisfy the high performance requirements. However, these architectures have complex design flows [3][4][5][6][7]. Multiprocessors are most often used in recent researches [4][5][6][8][9][10][11].…”
Section: Introductionmentioning
confidence: 99%
“…However, these architectures have complex design flows [3][4][5][6][7]. Multiprocessors are most often used in recent researches [4][5][6][8][9][10][11].…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation