efficient, flexible, and typed group communications in java
Group communication is a crucial feature for high-performance and Grid computing. While previous works and libraries proposed such a characteristic (e.g. MPI, or object-oriented frameworks), the use of groups imposed specific constraints on programmers -- for instance the use of dedicated interfaces to trigger group communications.We aim at a more flexible mechanism. More specifically, this paper proposes a scheme where, given a Java class, one can initiate group communications using the standard public methods of the class together with the classical dot notation; in that way, group communications remains typed. Furthermore, groups are automatically constructed to handle the result of collective operations, providing an elegant and effective way to program gather operations. This flexibility also allows to handle results that are groups of remotely accessible objects, and to use a group as a means to dispatch different parameters to different group members (for instance in a cyclic manner). Furthemore, hierarchical groups can be easily and dynamically constructed; an important feature to achieve the use of several clusters in Grid computing.
group communications hierarchical and dynamic groups active objects