Group Communication Patterns for High Performance Computing in Scala

被引:2
|
作者
Hargreaves, Felix P. [1 ]
Merkle, Daniel [1 ]
Schneider-Kamp, Peter [1 ]
机构
[1] Univ Southern Denmark, Dept Math & Comp Sci, Odense, Denmark
关键词
High-Performance-Computing; Scala; Performance; Design; Languages;
D O I
10.1145/2636228.2636229
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We developed a Functional Object-Oriented PARallel framework (FOOPAR) for high-level high-performance computing in Scala. Central to this framework are Distributed Memory Parallel Data structures (DPDs), i.e., collections of data distributed in a shared nothing system together with parallel operations on these data. In this paper, we first present FOOPAR's architecture and the idea of DPDs and group communications. Then, we show how DPDs can be implemented elegantly and efficiently in Scala based on the Traversable/Builder pattern, unifying Functional and Object-Oriented Programming. We prove the correctness and safety of one communication algorithm and show how specification testing (via ScalaCheck) can be used to bridge the gap between proof and implementation. Furthermore, we show that the group communication operations of FOOPAR outperform those of the MPJ Express open source MPI-bindings for Java, both asymptotically and empirically. FOOPAR has already been shown to be capable of achieving close-to-optimal performance for dense matrix-matrix multiplication via JNI. In this article, we present results on a parallel implementation of the Floyd-Warshall algorithm in FOOPAR, achieving more than 94% efficiency compared to the serial version on a cluster using 100 cores for matrices of dimension 38000 x 38000.
引用
收藏
页码:75 / 85
页数:11
相关论文
共 50 条
  • [1] SCALA: A performance system for scalable computing
    Sun, XH
    Fahringer, T
    Pantano, M
    INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2002, 16 (04): : 357 - 370
  • [2] A communication framework for high performance computing
    Kandasamy, N
    Ammar, RA
    INTERNATIONAL SOCIETY FOR COMPUTERS AND THEIR APPLICATIONS 10TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING SYSTEMS, 1997, : 489 - 495
  • [3] Patterns for High Performance Multiscale Computing
    Alowayyed, S.
    Piontek, T.
    Suter, J. L.
    Hoenen, O.
    Groen, D.
    Luk, O.
    Bosak, B.
    Kopta, P.
    Kurowski, K.
    Perks, O.
    Brabazon, K.
    Jancauskas, V.
    Coster, D.
    Coveney, P. V.
    Hoekstra, A. G.
    FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2019, 91 : 335 - 346
  • [4] A Survey of Communication Performance Models for High-Performance Computing
    Rico-Gallego, Juan A.
    Diaz-Martin, Juan C.
    Manumachu, Ravi Reddy
    Lastovetsky, Alexey L.
    ACM COMPUTING SURVEYS, 2019, 51 (06) : 1 - 36
  • [5] SOME EFFECTS OF CERTAIN COMMUNICATION PATTERNS ON GROUP PERFORMANCE
    LEAVITT, HJ
    JOURNAL OF ABNORMAL AND SOCIAL PSYCHOLOGY, 1951, 46 (01): : 38 - 50
  • [6] Large-scale urban traffic simulation with Scala and high-performance computing system
    Janczykowski, Michal
    Turek, Wojciech
    Malawski, Maciej
    Byrski, Aleksander
    JOURNAL OF COMPUTATIONAL SCIENCE, 2019, 35 : 91 - 101
  • [7] A lightweight, high performance communication protocol for grid computing
    Dickens, Phillip M.
    CLUSTER COMPUTING-THE JOURNAL OF NETWORKS SOFTWARE TOOLS AND APPLICATIONS, 2010, 13 (01): : 47 - 66
  • [8] A lightweight, high performance communication protocol for grid computing
    Phillip M. Dickens
    Cluster Computing, 2010, 13 : 47 - 66
  • [9] Communication Patterns of Cloud Computing
    Melendez, Salvador
    McGarry, Michael P.
    Teller, Patricia J.
    Bruno, David
    2015 IEEE GLOBECOM WORKSHOPS (GC WKSHPS), 2015,
  • [10] Communication Patterns and Input Patterns in Distributed Computing
    Raynal, Michel
    2015 12th IEEE International Conference on Programming and Systems (ISPS), 2015,