Top Banner
INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University of Innsbruck This research has been partially funded by the Austrian Research Promotion Agency under contract 834307 (AutoCore) and by the FWF Austrian Science Fund under contract I01079 (GEMSCLAIM).
15

INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Apr 01, 2015

Download

Documents

Allison Wedge
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

INSPIREThe Insieme Parallel

Intermediate Representation

Herbert Jordan, Peter Thoman, Simone

Pellegrini, Klaus Kofler, and Thomas Fahringer

University of Innsbruck

This research has been partially funded by the Austrian Research Promotion Agency under contract 834307 (AutoCore) and by the FWF Austrian Science Fund under contract I01079 (GEMSCLAIM).

Page 2: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Parallel Programming OpenMP

Pragmas (+ API)

Cilk Keywords

MPI library

OpenCL library + JIT

• ‘hidden’ in compiler IRs• treated like ordinary APIs• coordinated by user

Page 3: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

The Insieme Vision

OpenCL / MPI / Insieme Runtime / others

OpenMP / Cilk / OpenCL / MPI / others

IR

to establish a research platform

for coarse grained, real world, hybrid

parallelism

Page 4: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

The Insieme Infrastructure

developed @ University of Innsbruck

Page 5: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

INSPIRE RequirementsOpenMP / Cilk / OpenCL / MPI / others

INSPIRE

• complete • unified• explicit• analyzable• transformable• compact• high level• whole program• open system• extensible

OpenCL / MPI / Insieme Runtime / others

Page 6: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

INSPIRE: Organization Core Language

type system supporting generic types full sequential & parallel control flow extension infrastructure

Extensions parameterized abstract data types (ADTs) to support extensions and external

interfaces

Page 7: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Types 7 type constructors:

Page 8: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Expressions 8 kind of expressions:

Page 9: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Statements 9 types of statements:

Page 10: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Parallel Model Parallel Control Flow

defined by jobs: processed cooperatively by thread

groups

Page 11: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Parallel Model (2) one work-sharing construct

one data-sharing construct

point-to-point communication abstract channels type:

Page 12: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Overall Structure Structural – opposed to nominal

systems full program is a single expression

Page 13: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Overall Structure Consequences:

every entity is self-contained no global lookup-tables or variables all functions are self-confined local modifications are isolated

Also: IR models execution – not code structure path in tree = call context (!)

Page 14: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Conclusion INSPIRE is designed to

represent and unify parallel applications

self-contained, execution oriented structure simplify whole-program manipulations

comprehensive parallel model sufficient to model leading standards for

parallel programming

Page 15: INSPIRE The Insieme Parallel Intermediate Representation Herbert Jordan, Peter Thoman, Simone Pellegrini, Klaus Kofler, and Thomas Fahringer University.

Thank You!Visit: http://insieme-compiler.orgContact: [email protected]