Net Ibis Communication Support for GridOriented Programming Environments PowerPoint PPT Presentation

presentation player overlay
1 / 39
About This Presentation
Transcript and Presenter's Notes

Title: Net Ibis Communication Support for GridOriented Programming Environments


1
Net Ibis Communication Support for Grid-Oriented
Programming Environments
  • Olivier Aumage

Ibis Project Vrije Universiteit, Amsterdam
2
Introduction
  • High-performance distributed computing
  • Objective
  • Go beyond computers power evolution rate
  • Means
  • Hardware
  • Multiplication of processing units
  • Software
  • Distributed programming environments

3
Domain evolution
  • Hardware
  • Much less work on supercomputer design
  • Trend towards simple hardware solutions
  • Standard components
  • Clusters of workstations
  • Software
  • Supporting tools for distributed computing
    application programming

4
One step further the Grid
  • Main idea
  • A grid
  • A single computer
  • A grid interconnection
  • Putting computing resources in common

5
The Grid concept
  • Main idea
  • A grid
  • A single computer
  • A grid interconnection
  • Analogy with electric power distribution
  • Computing power used without knowing where it
    comes from

Grid
6
Ibis
  • Principle
  • Java-centered approach
  • Better inherent portability than native
    compilation
  • Write once, run everywhere
  • Application support written in Java
  • Use special-case (native) optimizations on demand
  • Programming support
  • Heterogeneous grids
  • High level programming
  • Efficiency

7
Challenges
  • Distributed resources
  • Information
  • Discovery
  • Allocation
  • Control
  • Exploitation
  • Ibis approach
  • Reasonably efficient pure Java solution (for any
    JVM)
  • Optimized solutions with native code for special
    cases

8
Project architecture Interfaces
Application
RMI
GMI
RepMI
Satin
Ibis portability layer (IPL)
Serialization Communication
Gridmonitoring
Topologydiscovery
Informationservice
Resourcemanagement
Ibis
TCP, UDP, GMPanda, MPI
NWS
TopoMon
GRAM
GIS
9
Project architecture
Application
RMI
GMI
RepMI
Satin
Ibis portability layer (IPL)
Exploitation Communication
Control Grid monitoring
Exploration Topologydiscovery
Information service
Allocation Resourcemanagement
TCP, UDP, GMPanda, MPI
NWS
TopoMon
GRAM
GIS
10
Project architecture Code
Application
RMI
GMI
RepMI
Satin
Ibis portability layer (IPL)
Serialization Communication
Grid monitoring
Topologydiscovery
Informationservice
Resourcemanagement
TCP, UDP, GMPanda, MPI
NWS
TopoMon
GRAM
GIS
11
Project architecture Status
Application
RMI
GMI
RepMI
Satin
Ibis portability layer (IPL)
In progress
Serialization Communication
Gridmonitoring
Topologydiscovery
Informationservice
Resourcemanagement
TCP, UDP, GMPanda, MPI
NWS
TopoMon
GRAM
GIS
12
Communication
  • Model
  • Message passing
  • Open configuration
  • Objects
  • Receive port
  • Accept connections from one or more sending ports
  • Send port
  • Can be connected to one or more receive ports
  • Sends each message to all receive ports it is
    connected with

13
Interface
  • Message passing in Java
  • Native types
  • Bytes
  • Boolean
  • Characters
  • Integers, short, medium, long
  • Floats, short, long
  • Arrays
  • Native type elements
  • Efficiency
  • Array slices
  • Object elements
  • Objects
  • Several serialization implementations

true
false
A
B
3.14
6.28
14
Communication modules
Application
RMI
GMI
RepMI
Satin
  • Implementations
  • TCP Ibis
  • Panda Ibis

Ibis portability layer (IPL)
Serialisation / Communication
TCP Ibis
Panda Ibis
Panda, MPI
TCP
15
Limitations
  • TCP Ibis reference implementation
  • Hardcoded TCP support
  • Panda Ibis
  • Designed for native communication libraries
    (Panda, MPI)
  • Closed-world model
  • Limited code reuse
  • Monolithic architectures
  • Common code reduced
  • Compromised evolutivity

16
Proposal Net Ibis
  • Objectives
  • Easy prototyping
  • Modularity, flexibility
  • Task isolation
  • Short drivers
  • Portability
  • Strict restriction on native code usage
  • Use of standard Java mechanisms
  • Threads
  • Synchronization
  • Open world model
  • Connection/disconnection
  • Tolerance to unexpected disconnections
  • Efficiency
  • Polling, upcalls
  • Multi-protocol support

17
Communication modules
Application
RMI
GMI
RepMI
Satin
  • Implementations
  • TCP Ibis
  • Panda Ibis
  • Net Ibis

Ibis portability layer (IPL)
Serialisation / Communication
TCP Ibis
Net Ibis
Panda Ibis
TCP, UDP, GMetc.
Panda, MPI
TCP
18
Architecture
  • Data processing chain
  • Configurable stack
  • Unified driver interface
  • Optional components
  • Free order
  • Dynamic loading

19
Drivers
  • Driver characteristics
  • Objects
  • Driver
  • Input
  • Output
  • Driver
  • Factory for input objects and output objects
  • One instance per session
  • Input
  • One or more incoming connections
  • Unified interface
  • Output
  • One or more outgoing connections
  • Unified interface

Single connection output
Multiple connection output
20
Drivers
  • Driver characteristics
  • Objects
  • Driver
  • Input
  • Output
  • Driver
  • Factory for input objects and output objects
  • One instance per session
  • Input
  • One or more incoming connections
  • Unified interface
  • Output
  • One or more outgoing connections
  • Unified interface

Single connection output
Multiple connection output
21
Example
Send port
GM
TCP
UDP
22
Example connections
Send port
GM
TCP
UDP
23
Example data path
Send port
24
Example connection multiplication
Send port
25
Example more complex schemes
Send port
26
Send/Receive Port Configuration
27
Context string
28
Sub-contexts
29
Service connection
  • Internal network
  • Characteristics
  • TCP
  • Transparent multiplexing
  • Advantages
  • Unified connection scheme
  • Unified unexpected connection break detection
  • Simplification of drivers
  • Useful for low-frequency dynamic features

TCP
30
Implementation
  • Characteristics
  • Experimental status
  • 20 000 lines, Java C
  • Networks
  • GM, TCP, UDP
  • Network connection

Port interface
Serialization
Native-gtbytes
Identity
Multi-protocol
Port-level multiplexing
Reliability
Connection-level multiplexing
TCP
UDP
Service
GM
31
Tests
  • Environnement
  • DAS-2 cluster
  • PC bi-Pentium III 1 GHz, 1 GB
  • Réseau GM/Myrinet
  • Réseau Fast-Ethernet
  • Algorithm
  • Test 1000 x (send receive)
  • Results ½ x average of 5 tests
  • warm-up test

32
GM latency
Latency (µs)
Packet size (byte)
33
GM bandwidth
Bandwidth (MB/s)
Packet size (byte)
34
Serialization latency
35
Serialization bandwidth
36
Conclusion
  • A communication support for Grid environments
  • Net Ibis
  • Highly modular design
  • Dynamically configurable software stack
  • Open world model
  • Multi-protocol support
  • Basic support for fault tolerance
  • Open architecture

37
Future work
  • On-going work and to-do list
  • Performance tuning
  • Polling/upcalls
  • Buffer Management
  • Buffer factories
  • NIO support
  • New serialization code organization
  • Accumulator/dissipators
  • High-level configuration management
  • Collaboration with topology information
    service(s)
  • Decentralised functionning
  • Get rid of the Ibis name server

38
(No Transcript)
39
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com