antônio augusto fröhlich gilles pokam tientcheu wolfgang schöder-preikschat

24
German National Research Center for Information Technology Research Institute for Computer Architecture and Software Technology 1 German National Research Center for Information Technology Research Institute for Computer Architecture and Software Technology EPOS 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 mailto:[email protected] http://www.first.gmd.de/~guto May 2000

Upload: olive

Post on 19-Mar-2016

50 views

Category:

Documents


2 download

DESCRIPTION

EPOS 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 mailto:[email protected] http://www.first.gmd.de/~guto May 2000. Outline. Introduction - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

1

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy EPOS and Myrinet: Effective Communication Support for

Parallel Applications Running on Clusters of Workstations

Antônio Augusto FröhlichGilles Pokam Tientcheu

Wolfgang Schöder-Preikschat

mailto:[email protected]://www.first.gmd.de/~guto

May 2000

Page 2: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

2

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Outline Introduction

Application-orientation systems Component-based systems

EPOS Design Framework Generation Tools

Conclusion

Page 3: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

3

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

high performanceX

all purpose, global, generic

Introduction

There is no best “general” solution Each (class of) application has particular demands

Page 4: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

4

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Applicaiton-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 Isn’t known until run-time => dynamic adaptation Can be determined before run-time => static

configurationParallel and embedded applications

Adaptability and configurability Component-based?

Page 5: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

5

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Component-orientation

componentgranularity

many simple components customizability

reusabilityperformance“a queue link”

“a file system”usability

maintainabilitya few complex components

Page 6: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

6

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gyThe Gap to Applications

(Motivation for EPOS)

componentgranularity

many simple componentsWhat is this component for?

What is the difference to that other one?How do I use it?

Do I have to take this junk as well?The component I need is not there!a few complex components

Page 7: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

7

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gyEPOS: 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)

Page 8: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

8

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

System Abstraction

system micro-components

EPOS 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

Page 9: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

9

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Scenario Adapters

EPOS 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

Page 10: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

10

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

task

memory segment

thread

file

synchronizer

communicator

Inflated Interfaces

EPOS 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 => subset

Page 11: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

11

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

realization

<<interface>>

partially realize selectively realize

key

realization 1

<<interface>>

realization 3realization 2

1

2

3

Partial and Selective Realization Relationships

System configuration is basically restricted to the setting of selective realize keys

Page 12: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

12

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

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

EPOS Framework Static metaprogrammed

Metaprograms run at compile-time (Almost) no run-time overhead Implemented as C++ templates

System abstraction implementation

Page 13: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

13

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

inflated interfacescenario adapter

<<select>>

wrapper realization<<select>>

Application

EPOS FrameworkWrapped System Abstraction

Page 14: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

14

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

basic stub

message exchange stubprocedure call stubInflated interface

<<select>>stub

<<select>>server

<<select>>realization

basic server

message exchange serverprocedure call server

handle

<<select>>id

<<select>>message

<<select>>id

state

Application

System

EPOS FrameworkControlled System Abstraction

<select>>scenario adapter

Page 15: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

15

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Automatic 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

Page 16: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

16

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

syntacticanalyzer

tasks

segments

threadsmailboxes

mutexfiles

complex application programcode = new Segment(buffer, size);task = new Task(code, data);thread = new Thread(task, &entry_func, priority, SUSPENDED, arguments);mutex->entry();Mailbox mailbox;mailbox >> message; File file(name);file << mailbox;

Requirement Analysis

Page 17: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

17

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Requirement Analysis

flat memorylinks

syntacticanalyzer

real application program (MPI)Channel link(destination);link << mesage;

Page 18: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

18

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Context Information We need context information

new Thread(task, &func) => location?mailbox << message => protocol? Absence of Task => single-task?

Buildup databases Scenario dependencies Target machine description

Page 19: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

19

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Execution Scenario

execution scenario

+ =tasks

segments

threadsmailboxes

monitorsfiles

required Inflated interfaces

Page 20: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

20

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Application-oriented EPOS

application

interfaces

scenario adapters

system micro-components system abstractions

Page 21: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

21

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Conclusions EPOS doesn’t 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

Page 22: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

22

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Titel:send.epsErstellt von:fig2dev Version 3.2 Patchlevel 1Vorschau:Diese EPS-Grafik wurde nicht gespeichertmit einer enthaltenen Vorschau.Kommentar:Diese EPS-Grafik wird an einenPostScript-Drucker gedruckt, aber nichtan andere Druckertypen.

Page 23: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

23

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Titel:bandwidth.epsErstellt von:gnuplot 3.7 patchlevel 0.2Vorschau:Diese EPS-Grafik wurde nicht gespeichertmit einer enthaltenen Vorschau.Kommentar:Diese EPS-Grafik wird an einenPostScript-Drucker gedruckt, aber nichtan andere Druckertypen.

Page 24: Antônio Augusto Fröhlich Gilles Pokam Tientcheu Wolfgang Schöder-Preikschat

24

Germ

an N

atio

nal R

esea

rch

Cent

er fo

r Inf

orm

atio

n Te

chno

logy

Rese

arch

Inst

itute

for C

ompu

ter A

rchi

tect

ure

and

Softw

are

Tech

nolo

gy

Titel:latency.epsErstellt von:gnuplot 3.7 patchlevel 0.2Vorschau:Diese EPS-Grafik wurde nicht gespeichertmit einer enthaltenen Vorschau.Kommentar:Diese EPS-Grafik wird an einenPostScript-Drucker gedruckt, aber nichtan andere Druckertypen.