• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Object graph analysis (1999)

by Andre Spiegel
Add To MetaCart

Tools

Sorted by:
Results 1 - 6 of 6

Automatic Distribution in Pangaea

by Andre Spiegel , 2000
"... . Pangaea is a system that can distribute centralized Java programs, based on static source code analysis and using arbitrary distribution platforms, such as RMI or CORBA, as a backend. Pangaea takes the idea of distribution transparency one logical step further: both the decision for an appropri ..."
Abstract - Cited by 9 (1 self) - Add to MetaCart
. Pangaea is a system that can distribute centralized Java programs, based on static source code analysis and using arbitrary distribution platforms, such as RMI or CORBA, as a backend. Pangaea takes the idea of distribution transparency one logical step further: both the decision for an appropriate distribution strategy for a program, and the realization of that strategy on a particular distribution platform, are accomplished not only transparently, but also automatically. An important benefit of using static source code analysis for automatic distribution is that it can detect optimizations which would be impossible for a purely run-time based approach. 1 Introduction Pangaea 1 is a system that can distribute centralized Java programs automatically. Based on static source code analysis, Pangaea first takes an abstract decision how a given program should be distributed, such that certain requirements and optimization criteria are fulfilled. The distribution strategy thus o...

Adding Dynamic Object Migration to the Distributing Compiler Pangaea

by Miriam Busch , 2001
"... In distributed, object-oriented programs, placement of objects is crucial for performance, since remote method calls are far more expensive than local calls. Finding an appropriate con guration, i.e. a mapping from objects to hosts, is the most important task in distributed program design. This is n ..."
Abstract - Cited by 4 (0 self) - Add to MetaCart
In distributed, object-oriented programs, placement of objects is crucial for performance, since remote method calls are far more expensive than local calls. Finding an appropriate con guration, i.e. a mapping from objects to hosts, is the most important task in distributed program design. This is not only true for human developers, but also for the distributing compiler Pangaea that automatically generates a distributed program from a centralized one.

Software comprehension - integrating program analysis and software visualization

by Welf Löwe, Morgan Ericsson, Jonas Lundberg, Thomas Panas - in 2nd Conf. on Software Engineering Research and Practise in Sweden , 2002
"... Abstract — We advocate that successful software comprehension methods (and tools) need the synergy of low-level code analyses known from the field of compiler construction, high-level analyses from the field of re-engineering and software visualization techniques. We argue that each individual techn ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
Abstract — We advocate that successful software comprehension methods (and tools) need the synergy of low-level code analyses known from the field of compiler construction, high-level analyses from the field of re-engineering and software visualization techniques. We argue that each individual technique would be either not goal directed or too shallow (or both). After a thorough state-of-the-art analysis and a problem discussion, we propose an approach to integration. I.

Efficient Distribution by Static Analysis

by André Spiegel
"... . Distribution is an aspect of parallel programming that becomes increasingly well understood and handled ever more transparently on recently developed distribution platforms. We show in this paper that the performance of such platforms can be improved by static information about a program's logi ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
. Distribution is an aspect of parallel programming that becomes increasingly well understood and handled ever more transparently on recently developed distribution platforms. We show in this paper that the performance of such platforms can be improved by static information about a program's logic and structure which is impossible to determine at run-time. Examples for this include object immutability and the dynamic scoping of object references. We present a set of static analysis algorithms that can obtain this information automatically, and we introduce an automatic distribution environment called Pangaea which we are currently building to use these algorithms for parallel, high-performance computing in Java. 1 Introduction Parallel programming involves two distinct issues not found in sequential programming: expressing concurrency and handling distribution. While there is general consensus that concurrency in an algorithm must be identified and expressed by the programme...

Automatic Distribution of Java Byte-Code Based on Dependence Analysis

by Roxana E. Diaconescu, Lei Wang, Michael Franz
"... One way to relieve resources when executing a program on constrained devices is to migrate parts of it to other machines in a distributed system. Ideally, a system can automatically decide where to place parts of a program to satisfy resource constrains (CPU, memory bandwidth, battery power, etc.). ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
One way to relieve resources when executing a program on constrained devices is to migrate parts of it to other machines in a distributed system. Ideally, a system can automatically decide where to place parts of a program to satisfy resource constrains (CPU, memory bandwidth, battery power, etc.). We describe a compiler and virtual machine infrastructure as the context for research in automatic program partitioning and optimization for distributed execution. We define program partitioning as the process of decomposing a program into multiple tasks. The main motivation for our design is to enable experimenting with optimizing program execution on resource-constrained devices with respect to memory consumption, CPU time, battery lifetime and communication.

Parallelizing multithreaded Java programs: a criterion and its pi-calculus foundation

by Serge Chaumette, Pascal Grange, Université Bordeaux
"... After being widely recognized as a general purpose language, Java is now becoming a language of choice for implementing distributed applications, both of system and numerical types. Therefore there are many research efforts that are being carried out, the aim of which is to provide support to help u ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
After being widely recognized as a general purpose language, Java is now becoming a language of choice for implementing distributed applications, both of system and numerical types. Therefore there are many research efforts that are being carried out, the aim of which is to provide support to help users in the process of distributing Java codes. Nevertheless most of the resulting technologies impose so strong constraints on the candidate codes that they are difficult to use in practice. Our goal is to provide support for the automatic distribution of Java applications, with as few limitations as possible -- for instance we consider threads, what is not common. In this paper we present -calculus model that we have set up and how we use it to provide a strong formal foundation to the distribution of multithreaded applications. This work has been partly inspired by previous work by the OASIS team of Nice SophiaAntipolis in the framework of their ProActive project.
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University