Title: EPOS%20and%20Myrinet:%20Effective%20Communication%20Support%20for%20Parallel%20Applications%20Running%20on%20Clusters%20of%20Workstations
1EPOS and Myrinet Effective Communication Support
for Parallel Applications Running on Clusters of
Workstations
- Antônio Augusto Fröhlich
- Gilles Pokam Tientcheu
- Wolfgang Schöder-Preikschat
- mailtoguto_at_first.gmd.de
- http//www.first.gmd.de/guto
- May 2000
2Outline
- Introduction
- Application-orientation systems
- Component-based systems
- EPOS
- Design
- Framework
- Generation
- Tools
- Conclusion
3Introduction
high performance X all purpose, global, generic
- There is no best general solution
- Each (class of) application has particular demands
4Applicaiton-orientation
- Each application deserves its own run-time
support system - Set of applications that will run on top of the
operating system and their requirements - Isnt known until run-time gt dynamic adaptation
- Can be determined before run-time gt static
configuration - Parallel and embedded applications
- Adaptability and configurability
- Component-based?
5Component-orientation
6The Gap to Applications(Motivation for EPOS)
7EPOS Embedded Parallel Operating System
- EPOS operating system
- Application-driven assemblage of system
components - EPOS components
- Statically configurable, application ready system
abstractions - EPOS and the real world
- Intelligent visual tools for configuration
- Invisibility
- Standard libraries (Posix files, libc, libstdc,
libm) - Standard APIs (Posix threads, MPI)
8EPOS System Abstractions
- Application ready components
- Independent from execution scenario
- Examples
- A thread on a given scheduling policy
- NOT a thread for one processor, or for
multi-tasking
9EPOS Scenario Adapters
- Adapt existing system abstractions for a given
execution scenario - Adapt system micro-components to grant the
semantics dictated by a given execution scenario - Examples
- An SMP adapter
- A secure remote invocation adapter
10EPOS Inflated Interfaces
- Export system abstractions to applications
- Well-known to application programmers
- Comprehensive
- Promote requirement analysis
- Examples
- thread
- communicator
- synchronizer
- Not a fat interface
- if intersection gt subset
11Partial and Selective Realization Relationships
- System configuration is basically restricted to
the setting of selective realize keys
12EPOS Framework
- Static metaprogrammed
- Metaprograms run at compile-time
- (Almost) no run-time overhead
- Implemented as C templates
- System abstraction implementation
- Wrapped
- No allocation or sharing control
- No cross-domain invocation
- Always embedded in the application
- Controlled
- Allocation and sharing control is possible
- Cross-domain invocation is possible
- Embedded in the application or packed in a kernel
13EPOS FrameworkWrapped System Abstraction
Application
inflated interface
wrapper
14EPOS FrameworkControlled System Abstraction
Application
ltltselectgtgt id
basic stub
ltltselectgtgt message
message exchange stub
procedure call stub
Inflated interface
ltltselectgtgt stub
handle
ltselectgtgt scenario adapter
ltltselectgtgt id
ltltselectgtgt server
ltltselectgtgt realization
state
message exchange server
procedure call server
basic server
System
15Automatic Generation
- Application refers to inflated interfaces
- Requirement analyzer parses the application
searching for inflated interfaces references - Which interfaces are referred to?
- How they are referred to?
- Expert system select the realizations that better
match the referred inflated interfaces - An application-oriented operating system is
compiled
16Requirement Analysis
17Requirement Analysis
18Context Information
- We need context information
- new Thread(task, func) gt location?
- mailbox ltlt message gt protocol?
- Absence of Task gt single-task?
- Buildup databases
- Scenario dependencies
- Target machine description
19Execution Scenario
20Application-oriented EPOS
21Conclusions
- EPOS doesnt grant the tailored OS to be optimal
- When several realizations fulfill the
requirements, the selection is arbitrary - Profiling could help
- EPOS framework overhead is close to zero
- Tools are being implemented
- System abstraction repository is growing
- First real applications are being negotiate
22(No Transcript)
23(No Transcript)
24(No Transcript)