15
HABANERO CNC Sagnak Tasirlar 1

Habanero Cnc

  • Upload
    wren

  • View
    40

  • Download
    0

Embed Size (px)

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

Page 1: Habanero  Cnc

1

HABANERO CNC

Sagnak Tasirlar

Page 2: Habanero  Cnc

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

Page 3: Habanero  Cnc

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

Page 4: Habanero  Cnc

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

Page 5: Habanero  Cnc

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

Page 6: Habanero  Cnc

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

Page 7: Habanero  Cnc

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

Page 8: Habanero  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

Page 9: Habanero  Cnc

9

Scheduling HJ-CnC

Blocking policy Granularity

Non Blocking policy Delayed async

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

Page 10: Habanero  Cnc

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

Page 11: Habanero  Cnc

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

Page 12: Habanero  Cnc

12

Results

Page 13: Habanero  Cnc

13

Results

Page 14: Habanero  Cnc

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 )

Page 15: Habanero  Cnc

15 Questions and feedback