the f mpj challenge solving complex problems on
play

The F-MPJ Challenge: Solving Complex Problems on Hierachical - PowerPoint PPT Presentation

Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Performance Evaluation Conclusions The F-MPJ Challenge: Solving Complex Problems on Hierachical Architectures with Java Sabela Ramos Garea


  1. Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Performance Evaluation Conclusions The F-MPJ Challenge: Solving Complex Problems on Hierachical Architectures with Java Sabela Ramos Garea Roberto Rey Expósito Group of Computer Architecture University of A Coruña sramos@udc.es, rreye@udc.es ComplexHPC Challenge 2011 Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  2. Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Performance Evaluation Conclusions Outline Introduction 1 Message Passing in Java with F-MPJ 2 3 Complex Application in Bioinformatic: ProtTest 4 Performance Evaluation 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  3. Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Java for HPC Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  4. Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Java for HPC Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  5. Introduction Message Passing in Java with F-MPJ Complex Application in Bioinformatic: ProtTest Java for HPC Performance Evaluation Conclusions Java for High Performance Computing (HPC) Features: Network communication support. Parallel/distributed programming in Multithreading support. Java: Portable, platform independent. Concurrency Framework. Object Oriented. Java Sockets. Safe, robust, simple and with Java RMI. easy maintenance. Message-Passing in Java (MPJ). Similar performance as native languages (C, Fortran). Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  6. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  7. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  8. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Message Passing in Java Message-passing is the main HPC programming model. APIs implemented: Implementation approaches PVM-like. RMI. mpiJava. Wrapping a native library via JNI. (e.g., MPI libraries: OpenMPI, MPICH). MPJ. Sockets. Others. Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  9. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Socket High-speed API Pure Java Impl. impl. network support mpiJava 1.2 Other APIs InfiniBand JGF MPJ Java NIO Java IO Myrinet SCI MPJava � � � Jcluster � � � Parallel Java � � � mpiJava � � � � P2P-MPI � � � � MPJ Express � � � � MPJ/Ibis � � � � JMPI � � � F-MPJ � � � � � � � Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  10. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  11. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions F-MPJ Communication Devices MPJ Applications F−MPJ Library omxdev ibvdev niodev/iodev smpdev device layer JVM JNI Java Sockets Java Threads native comms Open−MX IBV TCP/IP Myrinet/Ethernet InfiniBand Ethernet Shared Memory Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  12. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions F-MPJ Communication Devices for Heterogeneity Different sorts of devices: Distributed memory. Native communication layers: ibvdev, omxdev. Java sockets: iodev, niodev. Shared memory. Java threads: smpdev. Hybrid shared-distributed memory. In development. It combines a distributed memory device with smpdev. Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  13. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Optimizing performance: No buffering layer for primitive types. Multi-core aware collective operations library. Configurable algorithms depending on the message size and the number of processors. Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  14. Introduction Message Passing in Java with F-MPJ Message Passing in Java Complex Application in Bioinformatic: ProtTest F-MPJ: Fast MPJ Performance Evaluation Conclusions Multi-core aware algorithms for collective operations: Operation Algorithms Barrier BT, Gather+Bcast, BTe, Gather+Bcast Optimized Bcast MST, NBFT, BFT Scatter/v MST, NBFT Gather/v MST, NBFT, NB1FT, BFT Allgather/v NBFT, NBBDE, BBKT, NBBKT, BTe, Gather + Bcast Alltoall/v NBFT, NB1FT, NB2FT, BFT Reduce MST, NBFT, BFT Allreduce NBFT, BBDE, NBBDE, BTe, Reduce + Bcast Reduce-scatter BBDE, NBBDE, BBKT, NBBKT, Reduce + Scatter Scan NBFT, OneToOne Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  15. Introduction Message Passing in Java with F-MPJ ProtTest Complex Application in Bioinformatic: ProtTest Parallel Strategies Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  16. Introduction Message Passing in Java with F-MPJ ProtTest Complex Application in Bioinformatic: ProtTest Parallel Strategies Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  17. Introduction Message Passing in Java with F-MPJ ProtTest Complex Application in Bioinformatic: ProtTest Parallel Strategies Performance Evaluation Conclusions ProtTest One of the most popular tools for selecting models of protein evolution. Almost 4,000 registered users. Over 700 citations. Written in Java. Intensive in computational needs. ProtTest 3 designed to take advantage of parallel processing. Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

  18. Introduction Message Passing in Java with F-MPJ ProtTest Complex Application in Bioinformatic: ProtTest Parallel Strategies Performance Evaluation Conclusions Introduction 1 Java for HPC 2 Message Passing in Java with F-MPJ Message Passing in Java F-MPJ: Fast MPJ 3 Complex Application in Bioinformatic: ProtTest ProtTest Parallel Strategies 4 Performance Evaluation Experimental Configuration F-MPJ Performance ProtTest 3 Performance 5 Conclusions Sabela Ramos Garea, Roberto Rey Expósito The F-MPJ Challenge

Recommend


More recommend