Proceedings of the 23rd International Conference on Supercomputing 2009
DOI: 10.1145/1542275.1542333
|View full text |Cite
|
Sign up to set email alerts
|

Combining thread level speculation helper threads and runahead execution

Abstract: With the current trend toward multicore architectures, improved execution performance can no longer be obtained via traditional single-thread instruction level parallelism (ILP), but, instead, via multithreaded execution. Generating thread-parallel programs is hard and thread-level speculation (TLS) has been suggested as an execution model that can speculatively exploit thread-level parallelism (TLP) even when thread independence cannot be guaranteed by the programmer/compiler. Alternatively, the helper thread… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
24
0

Year Published

2010
2010
2024
2024

Publication Types

Select...
3
3
1

Relationship

1
6

Authors

Journals

citations
Cited by 25 publications
(24 citation statements)
references
References 25 publications
(43 reference statements)
0
24
0
Order By: Relevance
“…Although this optimistic view of the existence of dependences usually results in a better performance, it does so at the cost of an increase in power when speculation fails. It is interesting to note that even when speculation fails, we may still be able to gain benefits, due to prefetching effects as it was previously reported in [19] and [28].…”
Section: Introductionmentioning
confidence: 63%
See 1 more Smart Citation
“…Although this optimistic view of the existence of dependences usually results in a better performance, it does so at the cost of an increase in power when speculation fails. It is interesting to note that even when speculation fails, we may still be able to gain benefits, due to prefetching effects as it was previously reported in [19] and [28].…”
Section: Introductionmentioning
confidence: 63%
“…Albeit simple, this approach can be very detrimental in terms of performance. As was pointed out in [28] even threads that do squash may be useful for prefetching reasons. By stalling threads that squash, we remove much of this desirable side-effect of TLS execution.…”
Section: T I M Ementioning
confidence: 98%
“…Many works have improved singlethread performance by using helper threads [16,28,35,37,38]. In [16,28], to tolerate memory bottlenecks, the helper threads perform pre-execution with idle hardware resources.…”
Section: Related Workmentioning
confidence: 99%
“…In [16,28], to tolerate memory bottlenecks, the helper threads perform pre-execution with idle hardware resources. Xekalakis et al [38] combined helper threads with Thread-Level Speculation and Runahead execution. Tiwari et al [35] used a helper thread to accelerate memory management.…”
Section: Related Workmentioning
confidence: 99%
“…For large general applications, like Code_Saturne developed by EDF for decades, generating threads is very complex without recoding or introducing data structures. Among the standard thread models (OpenMP and Posix threads) and the innovative models (Thread Level Speculation (TLS), Transactional Memory, Helper Thread, Runahead thread [1]) we focus here on the modelling programming based on compiler directives with the constraint to minimize the recoding impact.…”
Section: Introductionmentioning
confidence: 99%