HABANERO CNC Sagnak Tasirlar 1. Acknowledgments 2  Rice  Vivek Sarkar, Zoran Budimlic, Michael Burke, Philippe Charles  Vincent Cave,

Slides:



Advertisements
Similar presentations
wwwcsif.cs.ucdavis.edu/~jacksoni
Advertisements

1 Software and Services Group 1 Concurrent Collections (CnC) Kath Knobe Technology Pathfinding and Innovation (TPI) Software and Services Group (SSG) Intel.
X10 Tutorial PSC Software Productivity Study May 23 – 27, 2005 Vivek Sarkar IBM T.J. Watson Research Center This work has been supported.
Dynamic Determinism Checking for Structured Parallelism Edwin Westbrook 1, Raghavan Raman 2, Jisheng Zhao 3, Zoran Budimlić 3, Vivek Sarkar 3 1 Kestrel.
Threads, SMP, and Microkernels
HJ-Hadoop An Optimized MapReduce Runtime for Multi-core Systems Yunming Zhang Advised by: Prof. Alan Cox and Vivek Sarkar Rice University 1.
Enabling Speculative Parallelization via Merge Semantics in STMs Kaushik Ravichandran Santosh Pande College.
Computer Abstractions and Technology
Scalable and Precise Dynamic Datarace Detection for Structured Parallelism Raghavan RamanJisheng ZhaoVivek Sarkar Rice University June 13, 2012 Martin.
Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Concurrent Collections (CnC) A programming model for parallel programming 1Dennis Kafura – CS5204 – Operating Systems.
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
NSF/TCPP Early Adopter Experience at Jackson State University Computer Science Department.
Introduction To System Analysis and Design
Based on Silberschatz, Galvin and Gagne  2009 Threads Definition and motivation Multithreading Models Threading Issues Examples.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
CS 3013 & CS 502 Summer 2006 Threads1 CS-3013 & CS-502 Summer 2006.
Chapter 6– Artifacts of the process
Intel Concurrent Collections (for Haskell) Ryan Newton*, Chih-Ping Chen*, Simon Marlow+ *Intel +Microsoft Research Software and Services Group Jul 29,
Introduction To System Analysis and design
Intel Concurrent Collections (for Haskell) Ryan Newton, Chih-Ping Chen, Simon Marlow Software and Services Group Jul 27, 2010.
SEC(R) 2008 Intel® Concurrent Collections for C++ - a model for parallel programming Nikolay Kurtov Software and Services.
MPI3 Hybrid Proposal Description
Evaluation of a DAG with Intel® CnC Mark Hampton Software and Services Group CnC MIT July 27, 2010.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Data Structures and Abstract Data Types "Get your data structures correct first, and the rest of the program will write itself." - David Jones.
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
Welcome to ACM SIGPLAN X10 Workshop San Jose, CA.
Introduction To System Analysis and Design
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
QUICK TIPS (--THIS SECTION DOES NOT PRINT--) This PowerPoint template requires basic PowerPoint (version 2007 or newer) skills. Below is a list of commonly.
Exascale Programming Models Lecture Series 06/12/2014 What is OCR? TG Team (presenter: Romain Cledat) June 12,
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
Chapter 4: Threads. 4.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th edition, Jan 23, 2005 Chapter 4: Threads Overview Multithreading.
Chapter 4 – Threads (Pgs 153 – 174). Threads  A "Basic Unit of CPU Utilization"  A technique that assists in performing parallel computation by setting.
Operating System Organization Chapter 3 Michelle Grieco.
George Goulas, Christos Gogos, Panayiotis Alefragis, Efthymios Housos Computer Systems Laboratory, Electrical & Computer Engineering Dept., University.
Memory Hierarchy Adaptivity An Architectural Perspective Alex Veidenbaum AMRM Project sponsored by DARPA/ITO.
Hierarchical Phasers for Scalable Synchronization and Reductions in Dynamic Parallelism 1 黃 翔 Dept. of Electrical Engineering National Cheng Kung University.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
13-1 Chapter 13 Concurrency Topics Introduction Introduction to Subprogram-Level Concurrency Semaphores Monitors Message Passing Java Threads C# Threads.
Porting processes to threads with MPC instead of forking Some slides from Marc Tchiboukdjian (IPDPS’12) : Hierarchical Local Storage Exploiting Flexible.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
3/12/2013Computer Engg, IIT(BHU)1 OpenMP-1. OpenMP is a portable, multiprocessing API for shared memory computers OpenMP is not a “language” Instead,
CEN6502, Spring Understanding the ORB: Client Side Structure of ORB (fig 4.1) Client requests may be passed to ORB via either SII or DII SII decide.
TTCN-3 Testing and Test Control Notation Version 3.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
Adding Concurrency to a Programming Language Peter A. Buhr and Glen Ditchfield USENIX C++ Technical Conference, Portland, Oregon, U. S. A., August 1992.
Introduction to Operating Systems Concepts
Chapter 4: Threads Modified by Dr. Neerja Mhaskar for CS 3SH3.
Applications Active Web Documents Active Web Documents.
Chapter 4: Multithreaded Programming
Done By: Ashlee Lizarraga Ricky Usher Jacinto Roches Eli Gomez
CDSC/InTrans Review Oct , 2016 Student names: Martin Kong, OSU/Rice
The Concurrent Collections (CnC)
CnC: A Dependence Programming Model
Computer Engg, IIT(BHU)
Logistics and Abstract Metrics
Communicating Runtimes in CnC
Chapter 4: Threads.
CHAPTER 4:THreads Bashair Al-harthi OPERATING SYSTEM
2018 NSF Expeditions in Computing PI Meeting
2018 NSF Expeditions in Computing PI Meeting
Concurrency, Processes and Threads
PPT and video are due no later than February 15, 2019
Chapter 4: Threads & Concurrency
Implementation support
CMSC 202 Threads.
Implementation support
Presentation transcript:

HABANERO CNC Sagnak Tasirlar 1

Acknowledgments 2  Rice  Vivek Sarkar, Zoran Budimlic, Michael Burke, Philippe Charles  Vincent Cave, David Peixotto, Dragos Sbirlea, Alina Simion, Max Grossman  Intel  Kathleen Knobe, Geoff Lowney, Ryan Newton, Mark Hampton, Frank Schlimbach   Aparna Chandramowlishwaran, Richard Tech  Jens Palsberg and CDSC

Habanero’s Parallelism Postulation 3  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

Habanero’s Parallelism Postulation 4  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

Habanero’s Parallelism Postulation 5  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

Habanero Java (HJ) 6  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

Habanero CnC (HJ-CnC) 7  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

import Habanero CnC Build Model Code to invoke the graph Code to put initial values in graph Code to implement abstract steps User specified Concurrent Collections components Concurrent Collections Textual Graph cnc_t Translator Habanero Java source files cnc_c Compiler.class Files JAR builder Concurrent Collections Library Java application Habanero Java Source Files Abstract classes for all steps Definitions for all collections Graph definition and initialization Habanero Java Runtime Library

Scheduling HJ-CnC 9  Blocking policy  Granularity  Non Blocking policy  Delayed async  Rollback and Replay  HJ exception handling  Side effect freedom  Data driven nature

Habanero CnC vs Intel CnC 10  Step language  Java (or HJ) vs C++  Safety  Tag types : Immutable vs mutable  Graph conformance  Runtime scheduling  HJ runtimes vs Intel TBB

HJ-CnC as a domain specific language 11  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

Results 12

Results 13

References 14  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 )

Questions and feedback 15