Habanero Cnc

Preview:

DESCRIPTION

Habanero Cnc. Sagnak Tasirlar. Acknowledgments. Colleagues @ Rice Vivek Sarkar , Zoran Budimlic , Michael Burke, Philippe Charles Vincent Cave, David Peixotto , Dragos Sbirlea , Alina Simion , Max Grossman Collaborators @ Intel - PowerPoint PPT Presentation

Citation preview

1

HABANERO CNC

Sagnak Tasirlar

2

Acknowledgments

Colleagues @ Rice Vivek Sarkar, Zoran Budimlic, Michael Burke, Philippe

Charles Vincent Cave, David Peixotto, Dragos Sbirlea, Alina

Simion, Max Grossman

Collaborators @ Intel Kathleen Knobe, Geoff Lowney, Ryan Newton, Mark

Hampton, Frank Schlimbach

Collaborators @ Aparna Chandramowlishwaran, Richard Vuduc

@Georgia Tech Jens Palsberg and CDSC team @UCLA

3

Habanero’s Parallelism Postulation Four dimensions of portable parallelism

Lightweight dynamic task creation finish/async parallelism

Collective and point-to-point synchronization phaser

Mutual exclusion, isolation isolated

Locality control Hierarchical place trees

4

Habanero’s Parallelism Postulation Four dimensions of portable parallelism

Lightweight dynamic task creation finish/async parallelism

Collective and point-to-point synchronization phaser

Mutual exclusion, isolation isolated

Locality control Hierarchical place trees

Figure credit: Raghavan Raman, MS Thesis, Compiler Support for Work-Stealing Parallel Runtime Systems

5

Habanero’s Parallelism Postulation Four dimensions of portable parallelism

Lightweight dynamic task creation finish/async parallelism

Collective and point-to-point synchronization phaser

Mutual exclusion, isolation isolated

Locality control Hierarchical place trees

6

Habanero Java (HJ)

An extended subset of X10 v1.5 which is an extended subset of Java

Achieves parallelism via mentioned four dimensions

Work sharing, work stealing and adaptive runtimes

Requires parallelism awareness

Download from habanero.rice.edu/hj

7

Habanero CnC (HJ-CnC)

Coordination language for Habanero Java on top of HJ coordinating communication within

HJ steps Parallelism oblivious development

Every step instance is an async CnC graph is wrapped with a finish scope Item and Tag Collections are Concurrent hash

maps Has three flavors of scheduling

Download from habanero.rice.edu/cnc

importimport

Habanero CnC Build ModelCode to invoke the graphCode to put initial values in graphCode to implement abstract steps

User specified

Concurrent Collections components

ConcurrentCollectionsTextualGraph

cnc_t Translator

Habanero Java source files

cnc_c Compiler

.classFiles

JAR builder

Concurrent Collections Library

Java application

HabaneroJava

Source Files

Abstract classes for all stepsDefinitions for all collectionsGraph definition and initialization

Habanero JavaRuntimeLibrary

9

Scheduling HJ-CnC

Blocking policy Granularity

Non Blocking policy Delayed async

Rollback and Replay HJ exception handling Side effect freedom Data driven nature

10

Habanero CnC vs Intel CnC

Step language Java (or HJ) vs C++

Safety Tag types : Immutable vs mutable Graph conformance

Runtime scheduling HJ runtimes vs Intel TBB

11

HJ-CnC as a domain specific language

Rice-UCLA collaboration on customizable domain specific computing Five year NSF expeditions project to investigate

malleable domain specific hardware and software Domain is set as medical imaging and hemodynamic

modeling Habanero CnC is the language of choice for domain

experts

For further info visit cdsc.ucla.edu

12

Results

13

Results

14

References

Submitted Technical Report IPDPS ’10

Performance Evaluation of Concurrent Collections on High-Performance Multicore Computing Systems (A. Chandramowlishwaran, K. Knobe, R. Vuduc

Damp ’09 Declarative Aspects of Memory Management in the Concurrent

Collections Parallel Programming Model (Z.Budimlic, A. Chandramowlishwaran, K. Knobe, G. Lowney, V. Sarkar and L. Treggiari)

CPC ’09 Multi-core Implementations of the Concurrent Collections

Programming Model (Zoran Budimlic, Aparna Chandramowlishwaran, Kathleen Knobe, Geoff Lowney, Vivek Sarkar, and Leo Treggiari )

15 Questions and feedback