𝔖 Bobbio Scriptorium
✦   LIBER   ✦

Run-time optimizations for a Java DSM implementation

✍ Scribed by R. Veldema; R. F. H. Hofman; R. A. F. Bhoedjang; H. E. Bal


Publisher
John Wiley and Sons
Year
2003
Tongue
English
Weight
208 KB
Volume
15
Category
Article
ISSN
1532-0626

No coin nor oath required. For personal study only.

✦ Synopsis


Abstract

Jackal is a fine‐grained distributed shared memory implementation of the Java programming language. Jackal implements Java's memory model and allows multithreaded Java programs to run unmodified on distributed‐memory systems.

This paper focuses on Jackal's run‐time system, which implements a multiple‐writer, home‐based consistency protocol. Protocol actions are triggered by software access checks that Jackal's compiler inserts before object and array references. To reduce access‐check overhead, the compiler exploits source‐level information and performs extensive static analysis to optimize, lift, and remove access checks. We describe optimizations for Jackal's run‐time system, which mainly consists of discovering opportunities to dispense with flushing of cached data. We give performance results for different run‐time optimizations, and compare their impact with the impact of one compiler optimization. We find that our run‐time optimizations are necessary for good Jackal performance, but only in conjunction with the Jackal compiler optimizations described by Veldema et al. As a yardstick, we compare the performance of Java applications run on Jackal with the performance of equivalent applications that use a fast implementation of Java's Remote Method Invocation instead of shared memory. Copyright © 2003 John Wiley & Sons, Ltd.


📜 SIMILAR VOLUMES


Just-in-time optimizations for high-perf
✍ Cierniak, Michał; Li, Wei 📂 Article 📅 1997 🏛 John Wiley and Sons 🌐 English ⚖ 93 KB 👁 2 views

Our previous experience with an off-line Java optimizer has shown that some traditional algorithms used in compilers are too slow for a JIT compiler. In this paper we propose and implement faster ways of performing analyses needed for our optimizations. For instance, we have replaced reaching defini

Java/DSM: A platform for heterogeneous c
✍ Yu, Weimin; Cox, Alan 📂 Article 📅 1997 🏛 John Wiley and Sons 🌐 English ⚖ 95 KB 👁 2 views

In this paper we describe a system for programming heterogeneous computing environments based upon Java and software distributed shared memory (DSM). Compared with existing approaches for heterogeneous computing, our system transparently handles both the hardware differences and the distributed natu

EJVM: an economic Java run-time environm
✍ Da-Wei Chang; Ruei-Chuan Chang 📂 Article 📅 2001 🏛 John Wiley and Sons 🌐 English ⚖ 268 KB

As network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make these devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic

Run-time evaluation of opportunities for
✍ Ondřej Lhoták; Laurie Hendren 📂 Article 📅 2005 🏛 John Wiley and Sons 🌐 English ⚖ 216 KB

## Abstract Object‐oriented languages, such as Java, encourage the use of many small objects linked together by field references, instead of a few monolithic structures. While this practice is beneficial from a program design perspective, it can slow down program execution by incurring many pointer

Design, implementation, and evaluation o
✍ Ishizaki, Kazuaki ;Kawahito, Motohiro ;Yasue, Toshiaki ;Takeuchi, Mikio ;Ogasawa 📂 Article 📅 2000 🏛 John Wiley and Sons 🌐 English ⚖ 580 KB

The Java language incurs a runtime overhead for exception checks and object accesses, which are executed without an interior pointer in order to ensure safety. It also requires type inclusion test, dynamic class loading, and dynamic method calls in order to ensure flexibility. A 'Just-In-Time' (JIT)