A survey on thread-level speculation techniques

A Estebanez, DR Llanos… - ACM Computing Surveys …, 2016 - dl.acm.org
Thread-Level Speculation (TLS) is a promising technique that allows the parallel execution
of sequential code without relying on a prior, compile-time-dependence analysis. In this …

HELIX: Automatic parallelization of irregular programs for chip multiprocessing

S Campanoni, T Jones, G Holloway, VJ Reddi… - Proceedings of the …, 2012 - dl.acm.org
We describe and evaluate HELIX, a new technique for automatic loop parallelization that
assigns successive iterations of a loop to separate threads. We show that the inter-thread …

Food simulator: A haptic interface for biting

H Iwata, H Yano, T Uemura, T Moriya - IEEE virtual reality 2004, 2004 - ieeexplore.ieee.org
The food simulator is a haptic interface that presents biting force. The taste of food arises
from a combination of chemical, auditory, olfactory and haptic sensation. Haptic sensation …

Is Parallel Programming Hard, And, If So, What Can You Do About It?(Release v2023. 06.11 a)

PE McKenney - arXiv preprint arXiv:1701.00854, 2017 - arxiv.org
The purpose of this book is to help you program shared-memory parallel systems without
risking your sanity. Nevertheless, you should think of the information in this book as a …

HELIX-RC: An architecture-compiler co-design for automatic parallelization of irregular programs

S Campanoni, K Brownell, S Kanev, TM Jones… - ACM SIGARCH …, 2014 - dl.acm.org
Data dependences in sequential programs limit parallelization because extracted threads
cannot run independently. Although thread-level speculation can avoid the need for precise …

T4: Compiling sequential code for effective speculative parallelization in hardware

VA Ying, MC Jeffrey, D Sanchez - 2020 ACM/IEEE 47th Annual …, 2020 - ieeexplore.ieee.org
Multicores are now ubiquitous, but programmers still write sequential code. Speculative
parallelization is an enticing approach to parallelize code while retaining the ease of …

Parallelizing user-defined aggregations using symbolic execution

V Raychev, M Musuvathi, T Mytkowicz - Proceedings of the 25th …, 2015 - dl.acm.org
User-defined aggregations (UDAs) are integral to large-scale data-processing systems,
such as MapReduce and Hadoop, because they let programmers express application …

HELIX-UP: Relaxing program semantics to unleash parallelization

S Campanoni, G Holloway, GY Wei… - 2015 IEEE/ACM …, 2015 - ieeexplore.ieee.org
Automatic generation of parallel code for general-purpose commodity processors is a
challenging computational problem. Nevertheless, there is a lot of latent thread-level …

Perspective: A sensible approach to speculative automatic parallelization

S Apostolakis, Z Xu, G Chan, S Campanoni… - Proceedings of the …, 2020 - dl.acm.org
The promise of automatic parallelization, freeing programmers from the error-prone and time-
consuming process of making efficient use of parallel processing resources, remains …

A study on popular auto‐parallelization frameworks

S Prema, R Nasre, R Jehadeesan… - Concurrency and …, 2019 - Wiley Online Library
We study five popular auto‐parallelization frameworks (Cetus, Par4all, Rose, ICC, and
Pluto) and compare them qualitatively as well as quantitatively. All the frameworks primarily …