Message Passing Interface for ROOT

Message Passing Interface for ROOT

Message Passing Interface for ROOT Omar Zapata Gerardo Gutiérrez http://oproject.org/ROOTMpi Outline Message Passing Interface ROOTMpi MPI Current status and future Implementation with ROOT Conclusions 2 Message Passing Interface Standard of communication for HPC/Grid Computing Widely used in the scientific community. Implementations OpenMPI, MPICH, IBM, Intel etc.. Support for: RMA (Remote Memory Access) Shared memory Checkpointing P2P and collective communication Fault tolerance under development http://mpi-forum.org/mpi-40 3 ROOTMpi Integration of MPI and ROOT technologies in a framework for parallel computing. Motivation: Communicate ROOT objects through processes. Implement MPI with a better design for ROOT. Create an interface that uses the new C++ features to write parallel code. Implement ROOT algorithms in parallel for HPC/Grid systems. 4 ROOTMpi Prototype is going under development with the next features already implemented Peer to Peer communication Some collective operation implemented Gather/AllGtaher Scatter/AllScatter Redude/AllReduce Bcast Communicators IntraCommunicator InterCommunicator Blocking and non-blocking communication. Tested with OpenMPI and MPICH 5 ROOTMpi Design 6 ROOTMpi Design 7 ROOTMpi Design Comparison with C Pointer Size Predefined Message MPI Tag id to void of the array MPI datatype destination Communicator 8 ROOTMpi Design Comparison with C Send in ROOTMpi Global Template Any serializable Message Communicator Method object destination Tag id 9 ROOTMpi Design 10 Example Peer to Peer 11 Example Peer to Peer output 12 Current Status Feature Description Status TCommunicator Base class for all DONE communcators, to perform p2p and collective TIntraComminicator Class to do Almost DONE communication in the same context TInterCommunicator Class to perform DONE communication between different contexts. TCartCommunicator Cartesian TODO Communicator TGraphComminicator Graph communicator TODO 13 Current Status Feature Description Status Request Classes Classes to handle non- DONE blocking communication TEnvironment Class initialize/finalize DONE communication system TInterCommunicator Class to perform DONE communication between different contexts. Checkpointing Feature to save the TODO need design state of the execution and restore it. Fault Tolerance Feature to continue TODO MPI-4 comming execution in case of soon. fault. 14 Current Status FeatureCl Description Status Serialization for Made with the classes DONE communication TmpiMessage and TMpiMessageInfo Error Handling MPI error are very hard TODO need design to understant also for MPI experts, improbe the error handling. MPI Files Class manage TODO need design distribute file Memory Window Class to shared regions TODO need design of memory with Remote Access Memory 15 Conclusions MPI standard have all need HPC/Grid computing Shared/Distributed memory Checkpointing Fault tolerance under development ROOTMpi is A modern interface for MPI that uses powerful C++ design A great communication system through serialization. An easy way to parallelize codes in ROOT for HPC/Grid computing. 16 More Information Website http://oproject.org 17 To finish Thanks ! 18.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    18 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us