• DocumentCode
    2054146
  • Title

    Implementing High Performance Remote Method Invocation in CCA

  • Author

    Yin, Jian ; Agarwal, Khushbu ; Krishnan, Manoj ; Chavarría-Miranda, Daniel ; Gorton, Ian ; Epperly, Tom

  • Author_Institution
    Pacific Northwest Nat. Lab., Richland, WA, USA
  • fYear
    2011
  • fDate
    26-30 Sept. 2011
  • Firstpage
    547
  • Lastpage
    551
  • Abstract
    We report our effort in engineering a high performance remote method invocation (RMI) mechanism for the Common Component Architecture (CCA). This mechanism provides a highly efficient and easy-to-use mechanism for distributed computing in CCA, enabling CCA applications to effectively leverage parallel systems to accelerate computations. This work is built on the previous work of Babel RMI. Babel is a high performance language interoperability tool that is used in CCA for scientific application writers to share, reuse, and compose applications from software components written in different programming languages. Babel provides a transparent and flexible RMI framework for distributed computing. However, the existing Babel RMI implementation is built on top of TCP and does not provide the level of performance required to distribute fine-grained tasks. We observed that the main reason the TCP based RMI does not perform well is because it does not utilize the high performance interconnect hardware on a cluster efficiently. We have implemented a high performance RMI protocol, HPCRMI. HPCRMI achieves low latency by building on top of a low-level portable communication library, Aggregated Remote Message Copy Interface (ARMCI), and minimizing communication for each RMI call. Our design allows a RMI operation to be completed by only two RDMA operations. We also aggressively optimize our system to reduce copying. In this paper, we discuss the design and our experimental evaluation of this protocol. Our experimental results show that our protocol can improve RMI performance by an order of magnitude.
  • Keywords
    application program interfaces; natural sciences computing; object-oriented programming; open systems; remote procedure calls; software architecture; software reusability; Babel RMI; CCA; HPCRMI; RDMA operation; TCP; aggregated remote message copy interface; application composition; application reuse; application sharing; common component architecture; distributed computing; high performance RMI protocol; high performance language interoperability tool; high performance remote method invocation; low-level portable communication library; parallel system; scientific application writers; software components; Component architectures; Distributed computing; Hardware; Libraries; Programming; Protocols; Software; Aggregated Remote Message Copy Interface; Babel; Common Component Architecture; High Performance Computing; Remote Method Invocation;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Cluster Computing (CLUSTER), 2011 IEEE International Conference on
  • Conference_Location
    Austin, TX
  • Print_ISBN
    978-1-4577-1355-2
  • Electronic_ISBN
    978-0-7695-4516-5
  • Type

    conf

  • DOI
    10.1109/CLUSTER.2011.78
  • Filename
    6061205