DocumentCode
2299447
Title
Exploiting method-level parallelism in single-threaded Java programs
Author
Chen, Michael K. ; Olukotun, Kunle
Author_Institution
Comput. Syst. Lab., Stanford Univ., CA, USA
fYear
1998
fDate
12-18 Oct 1998
Firstpage
176
Lastpage
184
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
Keywords
object-oriented programming; parallel programming; Java virtual machine; method speculation; method-level parallelism; object-oriented programs; performance debugging; single-threaded Java programs; Buffer storage; Concurrent computing; Hardware; Java; Object oriented modeling; Out of order; Parallel processing; Read-write memory; Registers; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel Architectures and Compilation Techniques, 1998. Proceedings. 1998 International Conference on
Conference_Location
Paris
ISSN
1089-795X
Print_ISBN
0-8186-8591-3
Type
conf
DOI
10.1109/PACT.1998.727190
Filename
727190
Link To Document