The Experts below are selected from a list of 5361 Experts worldwide ranked by ideXlab platform

Jason Maassen - One of the best experts on this subject based on the ideXlab platform.

  • programming environments for high performance grid computing the albatross project
    Grid Computing, 2002
    Co-Authors: Thilo Kielmann, Jason Maassen, Henri E Bal, Rob V Van Nieuwpoort, Lionel Eyraud, Rutger F H Hofman, Kees Verstoep
    Abstract:

    The aim of the Albatross project is to study applications and programming environments for computational Grids. We focus on high-performance applications, running in parallel on multiple clusters or MPPs that are connected by wide-area networks (WANs). We briefly present three Grid programming environments developed in the context of the Albatross project: the MagPIe library for collective communication with MPI, the replicated Method Invocation (RepMI) mechanism for Java, and the Java-based Satin system for running divide-and-conquer programs on Grid platforms.A major challenge in investigating the performance of such applications is the actual WAN behavior. Typical wide-area links are just part of the Internet and thus shared among many applications, making runtime measurements irreproducible and thus scientifically hardly valuable. To overcome this problem, we developed a WAN emulator as part of Panda, our general-purpose communication substrate. The WAN emulator allows us to run parallel applications on a single (large) parallel machine with only the wide-area links being emulated. The Panda emulator is highly accurate and configurable at runtime. We present a case study in which Satin runs across various emulated WAN scenarios.

  • gmi flexible and efficient group Method Invocation for parallel programming
    2002
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We present a generalization of Java’s Remote Method Invocation model (RMI) providing an efficient group communication mechanism for parallel programming. Our Group Method Invocation model (GMI) allows Methods to be invoked either on a single object or on a group of objects, the latter possibly with personalized parameters. Likewise, result values and exceptions can be returned normally (as with RMI), discarded, or, when multiple results are produced, combined into a single result. The different Method Invocation and reply handling schemes can be combined orthogonally, allowing us to express a large spectrum of communication mechanisms of which RMI and MPI-style collective communication are special cases. With GMI, the Invocation and reply schemes can be selected for each Method individually at run time. GMI has been implemented in the Manta high-performance Java system. Using several micro-benchmarks and applications (partially taken from the Java Grande benchmark set), we investigate GMI’s runtime efficiency and compare to the collective communication operations from the mpiJava library. Our prototype implementation performs competitively to or even faster than mpiJava.

  • parallel application experience with replicated Method Invocation
    Concurrency and Computation: Practice and Experience, 2001
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We describe and evaluate a new approach to object replication in Java, aimed at improving the performance of parallel programs. Our programming model allows the programmer to define groups of objects that can be replicated and updated as a whole, using reliable, totally-ordered broadcast to send update Methods to all machines containing a copy. The model has been implemented in the Manta highperformance Java system. We evaluate system performance both with microbenchmarks and with a set of five parallel applications. For the applications, we also evaluate ease of programming, compared to RMI implementations. We present performance results for a Myrinet-based workstation cluster as well as for a wide-area distributed system consisting of four such clusters. The microbenchmarks show that updating a replicated object on 64 machines only takes about three times the RMI latency in Manta. Applications using Manta's object replication mechanism perform at least as fast as manually optimized versions based on RMI, while keeping the application code as simple as with naive versions that use shared objects without taking locality into account. Using a replication mechanism in Manta's runtime system enables several unmodified applications to run efficiently even on the wide-area system. Copyright © 2001 John Wiley & Sons, Ltd.

  • wide area parallel programming using the remote Method Invocation model
    Concurrency and Computation: Practice and Experience, 2000
    Co-Authors: Rob V Van Nieuwpoort, Jason Maassen, Thilo Kielmann, Henri E Bal, Ronald Veldema
    Abstract:

    Java’s support for parallel and distributed processing makes the language attractive for metacomputing applications, such as parallel applications that run on geographically distributed (wide-area) systems. To obtain actual experience with a Java-centric approach to metacomputing, we have built and used a high-performance wide-area Java system, called Manta. Manta implements the Java Remote Method Invocation (RMI) model using different communication protocols (active messages and TCP/IP) for different networks. The paper shows how widearea parallel applications can be expressed and optimized using Java RMI. Also, it presents performance results of several applications on a wide-area system consisting of four Myrinetbased clusters connected by ATM WANs. We finally discuss alternative programming models, namely object replication, JavaSpaces, and MPI for Java.

  • efficient replicated Method Invocation in java
    Proceedings of the ACM 2000 conference on Java Grande, 2000
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We describe a new approach to object replication in Java, aimed at improving the performance of parallel programs. Our programming model allows the programmer to define groups of objects that can be replicated and updated as a whole, using totally-ordered broadcast to send update Methods to all machines containing a copy. The model has been implemented in the Manta high-performance Java system. Performance measurements on a Myrinet cluster show that the replication mechanism is efficient (e.g., updating 16 replicas of a simple object takes 68 microseconds, only slightly longer than the Manta RMI latency). Example applications that use object replication perform as fast as manually optimized versions based on RMI.

Henri E Bal - One of the best experts on this subject based on the ideXlab platform.

  • programming environments for high performance grid computing the albatross project
    Grid Computing, 2002
    Co-Authors: Thilo Kielmann, Jason Maassen, Henri E Bal, Rob V Van Nieuwpoort, Lionel Eyraud, Rutger F H Hofman, Kees Verstoep
    Abstract:

    The aim of the Albatross project is to study applications and programming environments for computational Grids. We focus on high-performance applications, running in parallel on multiple clusters or MPPs that are connected by wide-area networks (WANs). We briefly present three Grid programming environments developed in the context of the Albatross project: the MagPIe library for collective communication with MPI, the replicated Method Invocation (RepMI) mechanism for Java, and the Java-based Satin system for running divide-and-conquer programs on Grid platforms.A major challenge in investigating the performance of such applications is the actual WAN behavior. Typical wide-area links are just part of the Internet and thus shared among many applications, making runtime measurements irreproducible and thus scientifically hardly valuable. To overcome this problem, we developed a WAN emulator as part of Panda, our general-purpose communication substrate. The WAN emulator allows us to run parallel applications on a single (large) parallel machine with only the wide-area links being emulated. The Panda emulator is highly accurate and configurable at runtime. We present a case study in which Satin runs across various emulated WAN scenarios.

  • gmi flexible and efficient group Method Invocation for parallel programming
    2002
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We present a generalization of Java’s Remote Method Invocation model (RMI) providing an efficient group communication mechanism for parallel programming. Our Group Method Invocation model (GMI) allows Methods to be invoked either on a single object or on a group of objects, the latter possibly with personalized parameters. Likewise, result values and exceptions can be returned normally (as with RMI), discarded, or, when multiple results are produced, combined into a single result. The different Method Invocation and reply handling schemes can be combined orthogonally, allowing us to express a large spectrum of communication mechanisms of which RMI and MPI-style collective communication are special cases. With GMI, the Invocation and reply schemes can be selected for each Method individually at run time. GMI has been implemented in the Manta high-performance Java system. Using several micro-benchmarks and applications (partially taken from the Java Grande benchmark set), we investigate GMI’s runtime efficiency and compare to the collective communication operations from the mpiJava library. Our prototype implementation performs competitively to or even faster than mpiJava.

  • parallel application experience with replicated Method Invocation
    Concurrency and Computation: Practice and Experience, 2001
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We describe and evaluate a new approach to object replication in Java, aimed at improving the performance of parallel programs. Our programming model allows the programmer to define groups of objects that can be replicated and updated as a whole, using reliable, totally-ordered broadcast to send update Methods to all machines containing a copy. The model has been implemented in the Manta highperformance Java system. We evaluate system performance both with microbenchmarks and with a set of five parallel applications. For the applications, we also evaluate ease of programming, compared to RMI implementations. We present performance results for a Myrinet-based workstation cluster as well as for a wide-area distributed system consisting of four such clusters. The microbenchmarks show that updating a replicated object on 64 machines only takes about three times the RMI latency in Manta. Applications using Manta's object replication mechanism perform at least as fast as manually optimized versions based on RMI, while keeping the application code as simple as with naive versions that use shared objects without taking locality into account. Using a replication mechanism in Manta's runtime system enables several unmodified applications to run efficiently even on the wide-area system. Copyright © 2001 John Wiley & Sons, Ltd.

  • wide area parallel programming using the remote Method Invocation model
    Concurrency and Computation: Practice and Experience, 2000
    Co-Authors: Rob V Van Nieuwpoort, Jason Maassen, Thilo Kielmann, Henri E Bal, Ronald Veldema
    Abstract:

    Java’s support for parallel and distributed processing makes the language attractive for metacomputing applications, such as parallel applications that run on geographically distributed (wide-area) systems. To obtain actual experience with a Java-centric approach to metacomputing, we have built and used a high-performance wide-area Java system, called Manta. Manta implements the Java Remote Method Invocation (RMI) model using different communication protocols (active messages and TCP/IP) for different networks. The paper shows how widearea parallel applications can be expressed and optimized using Java RMI. Also, it presents performance results of several applications on a wide-area system consisting of four Myrinetbased clusters connected by ATM WANs. We finally discuss alternative programming models, namely object replication, JavaSpaces, and MPI for Java.

  • efficient replicated Method Invocation in java
    Proceedings of the ACM 2000 conference on Java Grande, 2000
    Co-Authors: Jason Maassen, Thilo Kielmann, Henri E Bal
    Abstract:

    We describe a new approach to object replication in Java, aimed at improving the performance of parallel programs. Our programming model allows the programmer to define groups of objects that can be replicated and updated as a whole, using totally-ordered broadcast to send update Methods to all machines containing a copy. The model has been implemented in the Manta high-performance Java system. Performance measurements on a Myrinet cluster show that the replication mechanism is efficient (e.g., updating 16 replicas of a simple object takes 68 microseconds, only slightly longer than the Manta RMI latency). Example applications that use object replication perform as fast as manually optimized versions based on RMI.

Aske Plaat - One of the best experts on this subject based on the ideXlab platform.

  • an efficient implementation of java s remote Method Invocation
    ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 1999
    Co-Authors: Jason Maassen, Henri E Bal, Rob V Van Nieuwpoort, Ronald Veldema, Aske Plaat
    Abstract:

    Java offers interesting opportunities for parallel computing. In particular, Java Remote Method Invocation provides an unusually flexible kind of Remote Procedure Call. Unlike RPC, RMI supports polymorphism, which requires the system to be able to download remote classes into a running application. Sun's RMI implementation achieves this kind of flexibility by passing around object type information and processing it at run time, which causes a major run time overhead. Using Sun's JDK 1.1.4 on a Pentium Pro/Myri.net cluster, for example, the latency for a null RMI (without parameters or a return value) is 1228 μsec, which is about a factor of 40 higher than that of a user-level RPC. In this paper, we study an alternative approach for implementing RMI, based on native compilation. This approach allows for better optimization, eliminates the need for processing of type information at run time, and makes a light weight communication protocol possible. We have built a Java system based on a native compiler, which supports both compile time and run time generation of marshallers. We find that almost all of the run time overhead of RMI can be pushed to compile time. With this approach, the latency of a null RMI is reduced to 34 μsec, while still supporting polymorphic RMIs (and allowing interoperability with other JVMs).

Sean P Griffin - One of the best experts on this subject based on the ideXlab platform.

  • web based simulation in simjava using remote Method Invocation
    Winter Simulation Conference, 1997
    Co-Authors: Ernest H Page, Robert L Moose, Sean P Griffin
    Abstract:

    An investigation is underway regarding technologies to support the design, development and use of distributed, web-based simulations. As part of this investigation the Simjava simulation-support package has been extended to utilize the Remote Method Invocation facilities of the Java Development Kit (JDK) 1.1. Current efforts with Simjava are described and future research directions are outlined.

Rob V Van Nieuwpoort - One of the best experts on this subject based on the ideXlab platform.

  • programming environments for high performance grid computing the albatross project
    Grid Computing, 2002
    Co-Authors: Thilo Kielmann, Jason Maassen, Henri E Bal, Rob V Van Nieuwpoort, Lionel Eyraud, Rutger F H Hofman, Kees Verstoep
    Abstract:

    The aim of the Albatross project is to study applications and programming environments for computational Grids. We focus on high-performance applications, running in parallel on multiple clusters or MPPs that are connected by wide-area networks (WANs). We briefly present three Grid programming environments developed in the context of the Albatross project: the MagPIe library for collective communication with MPI, the replicated Method Invocation (RepMI) mechanism for Java, and the Java-based Satin system for running divide-and-conquer programs on Grid platforms.A major challenge in investigating the performance of such applications is the actual WAN behavior. Typical wide-area links are just part of the Internet and thus shared among many applications, making runtime measurements irreproducible and thus scientifically hardly valuable. To overcome this problem, we developed a WAN emulator as part of Panda, our general-purpose communication substrate. The WAN emulator allows us to run parallel applications on a single (large) parallel machine with only the wide-area links being emulated. The Panda emulator is highly accurate and configurable at runtime. We present a case study in which Satin runs across various emulated WAN scenarios.

  • wide area parallel programming using the remote Method Invocation model
    Concurrency and Computation: Practice and Experience, 2000
    Co-Authors: Rob V Van Nieuwpoort, Jason Maassen, Thilo Kielmann, Henri E Bal, Ronald Veldema
    Abstract:

    Java’s support for parallel and distributed processing makes the language attractive for metacomputing applications, such as parallel applications that run on geographically distributed (wide-area) systems. To obtain actual experience with a Java-centric approach to metacomputing, we have built and used a high-performance wide-area Java system, called Manta. Manta implements the Java Remote Method Invocation (RMI) model using different communication protocols (active messages and TCP/IP) for different networks. The paper shows how widearea parallel applications can be expressed and optimized using Java RMI. Also, it presents performance results of several applications on a wide-area system consisting of four Myrinetbased clusters connected by ATM WANs. We finally discuss alternative programming models, namely object replication, JavaSpaces, and MPI for Java.

  • an efficient implementation of java s remote Method Invocation
    ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 1999
    Co-Authors: Jason Maassen, Henri E Bal, Rob V Van Nieuwpoort, Ronald Veldema, Aske Plaat
    Abstract:

    Java offers interesting opportunities for parallel computing. In particular, Java Remote Method Invocation provides an unusually flexible kind of Remote Procedure Call. Unlike RPC, RMI supports polymorphism, which requires the system to be able to download remote classes into a running application. Sun's RMI implementation achieves this kind of flexibility by passing around object type information and processing it at run time, which causes a major run time overhead. Using Sun's JDK 1.1.4 on a Pentium Pro/Myri.net cluster, for example, the latency for a null RMI (without parameters or a return value) is 1228 μsec, which is about a factor of 40 higher than that of a user-level RPC. In this paper, we study an alternative approach for implementing RMI, based on native compilation. This approach allows for better optimization, eliminates the need for processing of type information at run time, and makes a light weight communication protocol possible. We have built a Java system based on a native compiler, which supports both compile time and run time generation of marshallers. We find that almost all of the run time overhead of RMI can be pushed to compile time. With this approach, the latency of a null RMI is reduced to 34 μsec, while still supporting polymorphic RMIs (and allowing interoperability with other JVMs).