This survey covers the general idea behind helper threads and the major ways in which they are implemented. The first section covers parallel helper threads and the issues crucial to their role in improving performance. The following sections cover the implementations of parallel helper threads, focusing on SMT processor based implementations and adapted superscalar processor based implementation with the advantages and disadvantages each method provides. Last, the idea of a sequential helper thread is introduced as a context that executes while the main thread has limited ILP. In the remaining section of the paper, sequential helper thread properties and the details of its implementation are covered. Current microprocessors provide substan...
Abstract | Modern day computer systems rely on two forms of parallelism to achieve high performance,...
A number of commercial companies are now attempting to develop production quality parallel processin...
Simultaneous multithreading (SMT) allows multiple hardware threads to execute concurrently on a proc...
Abstract. Software schemes to speculative parallelization require no changes to the hardware of exis...
Data prefetching via helper threading has been extensively investigated on Simultaneous Multi-Thread...
International audience—Heterogeneous Many Cores (HMC) architectures that mix many simple/small cores...
Modem processors are designed to achieve greater amounts of instruction level parallelism (ILP) and ...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
capable of executing instructions from multiple threads in the same cycle. SMT in fact was introduce...
Technology scaling trends have forced designers to consider alternatives to deeply pipelining aggres...
High-level, directive-based solutions are becoming the programming models (PMs) of the multi/many-co...
Modern processors provide a multitude of opportunities for instruction-level parallelism that most c...
ii Simultaneous Multithreading (SMT) is a single processor design technique that attempts to combine...
We introduce explicit multi-threading (XMT), a decentralized architecture that exploits fine-grained...
Abstract | Modern day computer systems rely on two forms of parallelism to achieve high performance,...
A number of commercial companies are now attempting to develop production quality parallel processin...
Simultaneous multithreading (SMT) allows multiple hardware threads to execute concurrently on a proc...
Abstract. Software schemes to speculative parallelization require no changes to the hardware of exis...
Data prefetching via helper threading has been extensively investigated on Simultaneous Multi-Thread...
International audience—Heterogeneous Many Cores (HMC) architectures that mix many simple/small cores...
Modem processors are designed to achieve greater amounts of instruction level parallelism (ILP) and ...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
capable of executing instructions from multiple threads in the same cycle. SMT in fact was introduce...
Technology scaling trends have forced designers to consider alternatives to deeply pipelining aggres...
High-level, directive-based solutions are becoming the programming models (PMs) of the multi/many-co...
Modern processors provide a multitude of opportunities for instruction-level parallelism that most c...
ii Simultaneous Multithreading (SMT) is a single processor design technique that attempts to combine...
We introduce explicit multi-threading (XMT), a decentralized architecture that exploits fine-grained...
Abstract | Modern day computer systems rely on two forms of parallelism to achieve high performance,...
A number of commercial companies are now attempting to develop production quality parallel processin...
Simultaneous multithreading (SMT) allows multiple hardware threads to execute concurrently on a proc...