Compiling Fortran D for MIMD distributed-memory machines
Communications of the ACM
Engineering a simple, efficient code-generator generator
ACM Letters on Programming Languages and Systems (LOPLAS)
PARADIGM: a compiler for automatic data distribution on multicomputers
ICS '93 Proceedings of the 7th international conference on Supercomputing
ACM Transactions on Programming Languages and Systems (TOPLAS)
ANTLR: a predicated-LL(k) parser generator
Software—Practice & Experience
A multilevel algorithm for partitioning graphs
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
Automatic data layout for high performance Fortran
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
New faster Kernighan-Lin-type graph-partitioning algorithms
ICCAD '93 Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design
The Coign automatic distributed partitioning system
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Pointer analysis for multithreaded programs
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
Compiling Global Name-Space Parallel Loops for Distributed Execution
IEEE Transactions on Parallel and Distributed Systems
J-Orchestra: Automatic Java Application Partitioning
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Towards a Distributed Platform for Resource-Constrained Devices
ICDCS '02 Proceedings of the 22 nd International Conference on Distributed Computing Systems (ICDCS'02)
Efficient Global Object Space Support for Distributed JVM on Cluster
ICPP '02 Proceedings of the 2002 International Conference on Parallel Processing
Joeq: a virtual machine and compiler infrastructure
Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators
Proceedings of the 2006 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the fifth SoMeT_06
Formal specification and implementation of an environment for automatic distribution
GPC'07 Proceedings of the 2nd international conference on Advances in grid and pervasive computing
Formal description of a runtime infrastructure for automatic distribution of programs
ISCIS'06 Proceedings of the 21st international conference on Computer and Information Sciences
Transparent and dynamic code offloading for java applications
ODBASE'06/OTM'06 Proceedings of the 2006 Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, DOA, GADA, and ODBASE - Volume Part II
Bandwidth-adaptive partitioning for distributed execution optimization of mobile applications
Journal of Network and Computer Applications
Hi-index | 0.00 |
This paper presents the design and the implementation of a compiler and runtime infrastructure for automatic program distribution.We are building a research infrastructure that enables experimentation with various program partitioning and mapping strategies and the study of automatic distribution's effect on resource consumption (e.g., CPU, memory, communication). Since many optimization techniques are faced with conflicting optimization targets (e.g., memory and communication), we believe that it is important to be able to study their interaction. We present a set of techniques that enable flexible resource modeling and program distribution. These are: dependence analysis, weighted graph partitioning, code and communication generation, and profiling. We have developed these ideas in the context of the Java language. We present in detail the design and implementation of each of the techniques as part of our compiler and runtime infrastructure. Then, we evaluate our design and present preliminary experimental data for each component, as well as for the entire system.