by
Reynald Affeldt,
Hidehiko Masuhara, Eijiro Sumii and Akinori Yonezawa
Abstract:
This paper describes a run-time specialization system for the Java language. One of the main difficulties of supporting the full Java language resides in a sound yet effective management of references to objects. This is because the specialization process may share references with the running application that executes the residual code, and because side-effects through those references by the specialization process could easily break the semantics of the running application. To cope with these difficulties, we elaborate requirements that ensure sound run-time specialization. Based on them, we design and implement a run-time specialization system for the Java language, which exhibits, for instance, approximately 20-25% speed-up factor for a ray-tracing application.
Reference:
Supporting Objects in Run-time Bytecode Specialization (Reynald Affeldt, Hidehiko Masuhara, Eijiro Sumii and Akinori Yonezawa), In ACM SIGPLAN ASIAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (ASIA-PEPM'02) (Wei-Ngan Chin, ed.), ACM Press, 2002.
Bibtex Entry:
@inproceedings{affeldt2002asiapepm,
author = {Reynald Affeldt and Hidehiko Masuhara and Eijiro Sumii and Akinori Yonezawa},
opturl = {asia-pepm2002.ps.gz},
pdf = {asia-pepm2002.pdf},
title = {Supporting Objects in Run-time Bytecode Specialization},
doi = {10.1145/568173.568179},
booktitle = {ACM SIGPLAN ASIAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (ASIA-PEPM'02)},
optcrossref = {?},
pages = {50--60},
year = 2002,
editor = {Wei-Ngan Chin},
optvolume = {?},
optnumber = {?},
optseries = {?},
publisher = {ACM Press},
address = {Aizu, Japan},
month = sep,
keywords = {Java, just-in-time compiler},
abstract = {This paper describes a run-time specialization system for the Java language. One of the main difficulties of supporting the full Java language resides in a sound yet effective management of references to objects. This is because the specialization process may share references with the running application that executes the residual code, and because side-effects through those references by the specialization process could easily break the semantics of the running application. To cope with these difficulties, we elaborate requirements that ensure sound run-time specialization. Based on them, we design and implement a run-time specialization system for the Java language, which exhibits, for instance, approximately 20-25\% speed-up factor for a ray-tracing application.}
}