SlideServe
Menu
Préférences
© SlideServe · v2026

Plan

cira avatar
25 diapositives · 404 Views · Sep 23, 2014

Plan. Introduction computation, clusters, high-performance communications Framework PM², RPC, communication interfaces Proposal Madeleine 2 Implementation and evaluation results on top of TCP, VIA, SCI Conclusion. Introduction.

Plan - slide 1
01 / 25Plan
1 / 17

Télécharger la présentation

Plan
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Olivier Aumage

  2. Plan • Introduction • computation,clusters, high-performance communications • Framework • PM², RPC, communication interfaces • Proposal • Madeleine 2 • Implementation and evaluation • results on top of TCP, VIA, SCI • Conclusion Olivier Aumage

  3. Introduction • What do academic scientist and industrial engineers need: • complex computations on huge data • high-performance computation machines: clusters of workstations • distributed parallel programming environments for clusters: PM² distributed RPC-based multithreaded environment • efficient communication support suited for such environments Olivier Aumage

  4. RPC • RPC: • Remote Procedure Call • PM² basis paradigm • A communication library for RPC should meet the following requirements: • portability • efficiency • zero-copy data transfer Olivier Aumage

  5. Low Level Interfaces • Characteristics: • direct network access • high efficiency • low portability • Examples: • BIP • Fast-Messages • VIA • SCI Olivier Aumage

  6. High-Level Interfaces: MPI • MPI - Message Passing Interface: • widely used in parallel computation applications • efficient portable implementations:MPI-CH • available on top of BIP and FM • But: • interface is not flexible enough for efficient RPC support Olivier Aumage

  7. Madeleine • Characteristics: • communication library used by PM² • portability • efficiency • dedicated to RPC paradigm • But: • heavily message passing oriented • suboptimal support of recent protocols : SCI, VIA, ... • limited interface Olivier Aumage

  8. Madeleine II Olivier Aumage

  9. User / Madeleine 2 Contract • Interface of Madeleine 2: • semantical specification of data transfer options • Consequences: • semantically adequate with user requirements • more power to the library: • more liberty of movement • more efficiency Olivier Aumage

  10. Example Example of a program using the Madeleine 2 communication library: Sending side : Receiving side : . . . . . . len = strlen("Madeleine 2"); conn = begin_packing(chan, remote); conn = begin_unpacking(chan); pack(conn, &len, sizeof(int), unpack(conn, &len, sizeof(int), send_CHEAPER, receive_EXPRESS); send_CHEAPER, receive_EXPRESS); str = malloc(len + 1); pack(conn, "Madeleine 2", len + 1, unpack(conn, str, len + 1, send_CHEAPER, receive_CHEAPER); send_CHEAPER, receive_CHEAPER); end_packing(conn); end_unpacking(conn); . . . . . . Olivier Aumage

  11. Communication Channels • Multi-channel support: • separate independant communication channels • important for easy modular application development • Multi-protocol support: • one protocol per channel • optimal use of available resources Olivier Aumage

  12. Adaptative Mechanisms • Objective: • support of protocols with multiple paradigms • dynamic paradigm selection for each data block • Solution: • use of a choice functioncriteria: • size • pack/unpack mode • anything else if needed Olivier Aumage

  13. Multi-Paradigm Structure • Connection: • contains one or more links • Link: • symbolizes a given data transfer method • allows full use of protocol dependant characteristics and optimizations • data ordering transparently enforced by Mad2’s high level generic layer • increased efficiency Olivier Aumage

  14. Buffer Management • Two kinds of buffers: • dynamic buffers • static buffers • Responsabilities of the pack function: • allocation of dynamic buffers • static buffer filling • buffers steering to adequate links • buffer group management for burst data transfer Olivier Aumage

  15. Olivier Aumage

  16. Implementation • Features of the implementation of Madeleine 2: • drivers available on top of: • VIA : message passing + RDMA write • SCI : remote write, DMA support planned • TCP • SBP • MPI and BIP support to be ready soon • 100 % operational environment Olivier Aumage

  17. Performance on top of TCP The following tests were realized using 2 PC Pentium II / 450MHz interconnected by a Fast-Ethernet network Olivier Aumage

  18. Performance on top of VIA The following tests were realized using 2 PC Pentium II / 450MHz interconnected by a Fast-Ethernet network Olivier Aumage

  19. Performance on top of SCI The following tests were realized using 2 PC Pentium II / 450MHz interconnected by a SCI network Olivier Aumage

  20. Dynamic Paradigm Selection Olivier Aumage

  21. Conclusion • Madeleine 2 : • more functionalities: multi-channel, multi-protocol, multi-paradigm • increased overall efficiency • full operational system • support for SCI, VIA, TCP, SBP • first high-performance adaptative communication library Olivier Aumage

  22. Future Work Olivier Aumage

  23. Multi-Cluster Support • Objectives : • network-heterogeneous multi-cluster support • metacomputing capabilities • Features : • inter-cluster channel • user-friendly configuration scheme • script-based applications and clusters description • one-step multi-cluster application compilation and launch • support for protocol specific loaders Olivier Aumage

  24. Example Example of cluster and application description files for Madeleine 2 : Cluster description : Application description : cluster popc: application gauss: { { hosts: popc0--11; executable: mad_gauss; domain: popc-private; path: "~/pm2/mad_applis/"; gateways: {domain: ens-lyon; host: popc0;}; clusters: adapters: {name: popc; hosts: popc0--3;}, {alias: TCP0; protocol: tcp;}, {name: sci; hosts: sci0--4;}; {alias: TCP1; protocol: tcp; suffix: "-t";}, channels: {alias: BIP; protocol: bip;}; {alias: Control; } adapter: sci.TCP0, popc.TCP0;}, {alias: Calc; adapter: sci.SCI, popc.BIP;}; } Olivier Aumage

  25. Clusters of cluster : • dynamic protocol selection • multi-protocol routing • architecture and network heterogeneity support Computation/communication scheduling : • optimized communication management • multiple reception policies support Olivier Aumage