Exploiting method-level parallelism in single-threaded Java programs
M. K. Chen,Kunle Olukotun +1 more
- 12 Oct 1998
- pp 176-184
TL;DR: Why the Java virtual machine is an effective environment for exploiting method-level parallelism, and how method speculation can potentially speed up single-threaded general purpose Java programs are shown.
read more
Abstract: Method speculation of object-oriented programs attempts to exploit method-level parallelism (MLP) by executing sequential method invocations in parallel, while still maintaining correct sequential ordering of data dependencies and memory accesses. In this paper, we show why the Java virtual machine is an effective environment for exploiting method-level parallelism, and demonstrate how method speculation can potentially speed up single-threaded general purpose Java programs. Results from our study show that significant speedups can be achieved on data-parallel applications with minimal programmer and compiler effort. On control-flow dependent programs, moderate speedups have been achieved, suggesting more significant performance improvements on these types of programs may come from more careful analysis or re-coding of the application. For both classes of applications, we discover performance debugging drastically improves speedups by eliminating or minimizing dependencies that limit the effectiveness of method speculation.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Uncovering hidden loop level parallelism in sequential applications
Hongtao Zhong,Mojtaba Mehrara,S.A. Lieberman,Scott Mahlke +3 more
- 24 Oct 2008
TL;DR: It is shown that substantial amounts of loop-level parallelism is available in general-purpose applications, but it lurks beneath the surface and is often obfuscated by a small number of data and control dependences.
Tasking with out-of-order spawn in TLS chip multiprocessors: microarchitecture and compilation
Jose Renau,James Tuck,Wei Liu,Luis Ceze,Karin Strauss,Josep Torrellas +5 more
- 20 Jun 2005
TL;DR: This paper is the first to propose a set of microarchitectural mechanisms that fundamentally enable fast TLS with out-of-order spawn in a CMP, and develops a fully-automated TLS compiler for aggressive out- of- order spawn.
Improving the performance of speculatively parallel applications on the Hydra CMP
Kunle Olukotun,Lance Hammond,Mark Willey +2 more
- 01 May 1999
TL;DR: This paper describes a collection of software and hardware techniques for improving speculation performance of the Hydra CMP, which focus on reducing the overheads associated with speculation and improving the speculation behavior of the applications using code restructuring.
83
A lightweight in-place implementation for software thread-level speculation
Cosmin E. Oancea,Alan Mycroft,Tim Harris +2 more
- 11 Aug 2009
TL;DR: A streamlined software-TLS algorithm for mostly-parallel loops that allows speculative work to be performed in place, so to avoid buffering, and so that reads naturally see earlier writes, and to reduce the size of TLS-related conflict-detection state.
Program Demultiplexing: Data-flow based Speculative Parallelization of Methods in Sequential Programs
Saisanthosh Balakrishnan,Gurindar S. Sohi +1 more
- 01 May 2006
TL;DR: An execution paradigm that creates concurrency in sequential programs by "demultiplexing" methods (functions or subroutines) is presented, and eight integer benchmarks from the SPEC2000 suite are evaluated and a harmonic mean speedup is achieved.
References
•Book
Computer Architecture: A Quantitative Approach
John L. Hennessy,David A. Patterson +1 more
- 01 Dec 1989
TL;DR: This best-selling title, considered for over a decade to be essential reading for every serious student and practitioner of computer design, has been updated throughout to address the most important trends facing computer designers today.
12.6K
•Book
The Java Virtual Machine Specification
Tim Lindholm,Frank Yellin +1 more
- 19 Sep 1996
TL;DR: In this article, the authors present a detailed overview of the Java Virtual Machine, including the internal structure of the class file format, the internal form of Fully Qualified Class and Interface names, and the implementation of new class instances.
Multiscalar processors
Gurindar S. Sohi,Scott E. Breach,T. N. Vijaykumar +2 more
- 01 May 1995
TL;DR: The philosophy of the multiscalar paradigm, the structure ofMultiscalar programs, and the hardware architecture of a multiscalars processor are presented.
929
Limits of instruction-level parallelism
David W. Wall
- 01 Apr 1991
TL;DR: The results of simulations of 18 different test programs under 375 different models of available parallelism analysis are presented, showing how simulations based on instruction traces can model techniques at the limits of feasibility and even beyond.
SELF: the power of simplicity
David Ungar,Randall B. Smith +1 more
- 01 Jul 1991
TL;DR: Because SELF does not distinguish state from behavior, it narrows the gaps between ordinary objects, procedures, and closures, and offers new insights into object-oriented computation.
689
Related Papers (5)
Michael Chen,Kunle Olukotun +1 more
- 01 May 2003
Lance Hammond,Mark Willey,Kunle Olukotun +2 more
- 01 Oct 1998
Gurindar S. Sohi,Scott E. Breach,T. N. Vijaykumar +2 more
- 01 May 1995
S. Gopal,T. N. Vijaykumar,James E. Smith,Gurindar S. Sohi +3 more
- 31 Jan 1998