session task 3.1: basic programming models krakow, 27 june 2006 pierre kuonen hes-so/eia-fr wp3 –...

20
Managed by Session Task 3.1: Basic Programming Models Krakow, 27 June 2006 Pierre Kuonen HES-SO/EIA-FR WP3 – Task 3.1

Post on 21-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Managed by

SessionTask 3.1: Basic Programming Models

Krakow, 27 June 2006

Pierre Kuonen

HES-SO/EIA-FR

WP3 – Task 3.1

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 2

Outline

• Current activities• Presentation of joint activities• Discussion on the deliverable D.PM.06

– “Programming models for the single GCM component: a survey"

• Future activities

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 3

Organization

Leader: P. Kuonen– HES-SO/EIA-FR : Haute Ecole Spécialisée de Suisse

Occidentale, Switzerland Participants:

– ISTI/CNR: Information Science and Technologies Institute, Italy

– INRIA : National Institute for Research in Computer Science and Control, France

– IC: Imperial College, UK– UNIPI: University of Pisa, Italy– WWU Muenster: University of Muenster, Germany– UNI PASSAU: University of Passau, Germany– VUA: Vrije Universiteit, The Netherlands– HES-SO/EIA-FR : Haute Ecole Spécialisée de Suisse

Occidentale, Switzerland – UOW: University of Westminster, UK

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 4

Current activities

Answer to e-mail sent the 9th of June 2006

• «  mention any research activity (not necessarily joint activity) related to WP3.1 which is in progress or is just finished in the CoreGRID NoE. »

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 5

INRIA (Rennes)

PaCO++ (http://www.irisa.fr/paris/Paco++/)

– implementation of the notion of “collective entities” in CORBA

– a parallel entity is a collection of identical objects– allow a simple and efficient embedding of a SPMD code

into a parallel CORBA object – provides portable parallel CORBA objects on top of

compliant ORB without involving whatsoever modification of the CORBA specifications

– extends CORBA but not to modify the model

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 6

INRIA (Shopia Antipolis)

ProActive (www.objectweb.org/proactive)– Asynchronous calls: typed messages (request and reply)– Automatic future-based synchronizations : wait-by-

necessity– Remote creation of remote objects– Distributed and non-functional exceptions handling– Transparent, dynamic code loading (up and down)– Reuse: polymorphism between standard objects and

remote objects– Group communications with dynamic group management– grounding parallel or distributed programming patterns

such as• Object Oriented SPMD• Mobile agents• structured parallelism (aka skeletons)

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 7

UNIPI

ASSIST (http://www.di.unipi.it/Assist.html)

– Parallel programming with skeletons• Coordination language to describe the skeleton of

distributed programs • Statically connected “parallel modules”

– Parallel Module• Farm, Pipeline, Geometric pattern, Data parallelism

– Tools• Compiler (C++, Fortran) generates binaries for

multiple platforms• Configuration files (application description)• Deployable tarball (XML config)

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 8

WWU Muenster

HOC-SA (http://pvs.uni-muenster.de/pvs/forschung/hoc/index-en.html)

– HOC-SA: components (HOCs) for recurring patterns of parallel behavior as Web services

– Central elements: Code Service and Custom Code Loader

– Programming concept: application-specific code is provided as a parameter inserted into generic code which is readily deployed to the Grid servers (similar to skeletal programming, but component-based, i.e., HOCs include the required middleware configuration)

– Purpose: simplify grid programming by abstracting over the middleware

– Reference implementation based on Globus Toolkit 4

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 9

VUA

Ibis (http://www.cs.vu.nl/ibis/)

– a Java-based Grid application programming environment providing object-based communication models: RMI, GMI, RepMI, Satin (divide-and-conquer) and MPJ

GAT (https://forge.gridforum.org/projects/saga-rg/)

– simple and standardized APIs to Grid resources and middleware

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 10

HES-SO/EIA-FR

POP-C++ (www.eif.ch/gridgroup/popc)

– a minimal extension of the C++ programming language implementing the notion of “parallel object”.

– a parallel object is a object which can be instantiate on a remote computer

– communication between can be done using six different semantics for remote procedure calls

– integrates support for resource management and resource discovery

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 11

On-going joint activities

Fellowship program: 14 months (June 05-August 06)– UNIPI-EIA-FR: fellow M.Pasin

• Object oriented environment for HPC applications on the GRID: to link ASSIST and POP-C++

Presented joint activities:– Applying the collective entity concept to POP-C++

• INRIA-EIA-FR: C.Perez (INRIA)

– Usage of POP-C++ model for matrix computation• CETIC-EIA-FR: P.Manneback CETIC

– Scheduling GCM-based Applications• WWU Muenster-TUD: Jan Dünnweber WWU Muenster

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 12

Future activities

Deliverable D.PM.06– Programming models for the single GCM

component: a survey

Re-think the objective of the task 3.1– From JPA2

• “related to the definition of a programming paradigm suitable for programming a single component of a GCM application”

To build on existing results or on-going activities– Answers to e-mail of the 9th of June

MUST be done

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 13

D.PM.06 (October 2006)

“Programming models for the single GCM component: a survey”

Candidates (from JPA2)– ProActive (INRIA)– ICENI (IC)– REFLEX (UCHILE)– HOC-SA (WWU)– Polytope (UNIPASSAU)– ASSIST (UNIPI)– Superscalar, MALLBA (UPC)– GAT, Ibis (VUA)– POP-C++ (HES-SO/EIA-FR)

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 14

Question (06 June 2006 )

A) Each of the institutions mentioned above send me by e-mail the following information:

– Is the above mentioned tool/model/language relevant for being mentioned and described in D.PM.06 (Yes/No).

– If the answer is NO, please briefly explain why...

B) I ask all partners to inform me about any other tools/models/languages we should mention in D.PM.06 (such as MPI for example).

DEADLINE: Monday19th of June.

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 15

Answers

Already received– ProActive (INRIA) Yes– Polytope (UNIPASSAU) No (WP3.3)– POP-C++ Yes– ASSIST Yes

Wait for the contribution on the “Classification of programming models” (see next slide)– ICENI (IC) -> ?– REFLEX (UCHILE) -> ?– HOC-SA (WWU) -> ?– Superscalar, MALLBA (UPC) -> ?– GAT, Ibis (VUA) -> ?– C/C++, JAVA, MPI, ….??

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 16

D.PM.06: Structure - tentative

1- Introduction (1-2 pages) (HES-SO)2 - Definition of a component according to GCM (INRIA, deadline July 8)3 - Classification of programming models (UNI CHILE)

– Set of dimensions ( deadline July 8)4- Survey (possibly model by model) (all)

– Title: Acronyme and full name (1line)– Origin: Who and when, original project, current stable version (2-5 lines)– Type of product: academic , industrial, free (or not),… (2-3 lines)– Type of tool: programming language, library, other,…– References: URL (preferably), books– Presentation: regarding the set of dimension (section 3)

5- Table of comparison: to be defined regarding section 3 (? page)6 – Standardization issues: could be one dimension (see section 3)7- Conclusion (half to one page)

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 17

Relation with task 3.3 and Research groups

Task 3.1 Basic Programming Models models and tools to support the programming of single components that will constitute component based Grid applications.

Task 3.3 Advanced programming models aimed at defining higher level models that permit programmers to use components and component compositions in more efficient and user-friendly ways.

Research groups Next slide

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 18

Research groups active in the Programming model Institute

Group name Coordinator Participants

Research Group on Component Communication

Jan Duennweber WWU Muenster, INRIA, ISTI/CNR, EIA-FR

Programming models of single components

Pierre Kuonen EIA-FR, INRIA, UNIPI, UNIPASSAU

Component definition Ludovic Henrio INRIA, UNIPI, VUA, IC

Advanced programming models Marco Danelutto UNIPI, INRIA, WWU, UNIPASSAU, VUA, QUB, UPC

Performance Models, Adaptivity Marco Aldinucci ISTI/CNR, UNIPI, INRIA, WWU, UNIPASSAU, VUA

Component run time support Thilo Kielmann VUA, INRIA, UNIPI

Component semantics INRIA/OASIS

Interoperability UOW, UNIPI

Security Jose Piquer All partners involved

Standards Thilo Kielmann People involved in National intiatives/decision committees

Interaction with other Virtual Institutes All partners in the Institute participating to other Institute activities

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 19

Future activities

Re-think the objective of the task 3.1– From JPA2

• related to the definition of a programming paradigm suitable for programming a single component of a GCM application

To build on existing results or on-going activities– Answers to e-mail of the 9th of June

• PaCO++, ProActive, ASSIST, HOC-SA, Ibis, GAT, POP-C++.

Instruments– Fellowship, short/long visits, REP, joint papers, FP7,…

European Research Network on Foundations, Software Infrastructures and Applications for large scale distributed, GRID and Peer-to-Peer Technologies 20

Current announced intentions of WP3.1 joint activities

- INRIA – HES-SO/EIA-FR- TR and visits to continue work started on:

Applying the collective entity concept to POP-C++

- CETIC – HES-SO/EIA-FR- TR and visits/fellowship to continue work

started on:Usage of POP-C++ model for matrix computation

- No other intention announced today. The situation will be re-evaluated after the release of D.PM.06