2004
DOI: 10.1145/1037947.1024411
|View full text |Cite
|
Sign up to set email alerts
|

Helper threads via virtual multithreading on an experimental itanium ® 2 processor-based platform

Abstract: Helper threading is a technology to accelerate a program by exploiting a processor's multithreading capability to run ``assist'' threads. Previous experiments on hyper-threaded processors have demonstrated significant speedups by using helper threads to prefetch hard-to-predict delinquent data accesses. In order to apply this technique to processors that do not have built-in hardware support for multithreading, we introduce virtual multithreading (VMT), a novel form of switch-on-event user-level multithreading… 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

2020
2020
2021
2021

Publication Types

Select...
2

Relationship

0
2

Authors

Journals

citations
Cited by 2 publications
(6 citation statements)
references
References 23 publications
0
6
0
Order By: Relevance
“…We divide the traditional prefetching algorithms into three broad categories: precomputation-based, temporal, and spatial. Precomputation-based prefetchers (e.g., runahead [46,59,60,63,[95][96][97][98][99][100][101] and helper-thread execution [33,40,41,45,73,74,87,106,119,128,141,144]) pre-execute program code to generate future memory requests. These prefetchers can generate highly-accurate prefetches even when no recognizable pattern exists in program memory requests.…”
Section: Other Related Workmentioning
confidence: 99%
“…We divide the traditional prefetching algorithms into three broad categories: precomputation-based, temporal, and spatial. Precomputation-based prefetchers (e.g., runahead [46,59,60,63,[95][96][97][98][99][100][101] and helper-thread execution [33,40,41,45,73,74,87,106,119,128,141,144]) pre-execute program code to generate future memory requests. These prefetchers can generate highly-accurate prefetches even when no recognizable pattern exists in program memory requests.…”
Section: Other Related Workmentioning
confidence: 99%
“…We call such DILs prefetchable and generate customized prefetching code for each. Similar to helper threads [34], [68], the prefetching code is extracted from the dataflow of the application itself. However, unlike helper threads (which require either spare thread contexts or special hardware support to run), our method inserts the prefetcher code into the application machine code directly.…”
Section: Delinquent Irregular Loadsmentioning
confidence: 99%
“…Helper threads [12], [13], [15], [16], [20], [21], [31], [32], [34], [35], [41], [42], [43], [59], [67], [68], [75] extract the backward slice of a delinquent load and run it on a spare thread context. When the latency of the backward slice is less than that of the original loop, the helper thread runs ahead of the main thread and prefetches memory accessed by the main thread into the cache.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations