Programmability Hiroshi Nakashima Thomas Sterling.

Slides:



Advertisements
Similar presentations
Technology Drivers Traditional HPC application drivers – OS noise, resource monitoring and management, memory footprint – Complexity of resources to be.
Advertisements

Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
Priority Research Direction Key challenges General Evaluation of current algorithms Evaluation of use of algorithms in Applications Application of “standard”
DEPARTMENT OF COMPUTER LOUISIANA STATE UNIVERSITY Models without Borders Thomas Sterling Arnaud & Edwards Professor, Department of Computer Science.
Priority Research Direction (I/O Models, Abstractions and Software) Key challenges What will you do to address the challenges? – Develop newer I/O models.
Priority Research Direction: Portable de facto standard software frameworks Key challenges Establish forums for multi-institutional discussions. Define.
4.1.5 System Management Background What is in System Management Resource control and scheduling Booting, reconfiguration, defining limits for resource.
Prof. Srinidhi Varadarajan Director Center for High-End Computing Systems.
The Stanford Directory Architecture for Shared Memory (DASH)* Presented by: Michael Bauer ECE 259/CPS 221 Spring Semester 2008 Dr. Lebeck * Based on “The.
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Fundamental Design Issues for Parallel Architecture Todd C. Mowry CS 495 January 22, 2002.
1 Dr. Frederica Darema Senior Science and Technology Advisor NSF Future Parallel Computing Systems – what to remember from the past RAMP Workshop FCRC.
Chapter 13 Embedded Systems
1 New Architectures Need New Languages A triumph of optimism over experience! Ian Watson 3 rd July 2009.
User-Level Interprocess Communication for Shared Memory Multiprocessors Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, and Henry M. Levy Presented.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Power is Leading Design Constraint Direct Impacts of Power Management – IDC: Server 2% of US energy consumption and growing exponentially HPC cluster market.
1 Lightweight Remote Procedure Call Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska and Henry M. Levy Presented by: Karthika Kothapally.
Lecture 4: Parallel Programming Models. Parallel Programming Models Parallel Programming Models: Data parallelism / Task parallelism Explicit parallelism.
Priority Research Direction Key challenges Fault oblivious, Error tolerant software Hybrid and hierarchical based algorithms (eg linear algebra split across.
ET E.T. International, Inc. X-Stack: Programming Challenges, Runtime Systems, and Tools Brandywine Team May2013.
4.x Performance Technology drivers – Exascale systems will consist of complex configurations with a huge number of potentially heterogeneous components.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Priority Research Direction (use one slide for each) Key challenges -Fault understanding (RAS), modeling, prediction -Fault isolation/confinement + local.
Architecting Web Services Unit – II – PART - III.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
I T & S A e r o s p a c eD e f e n c e THALES Research & Technology THALES recommendations for the final OMG standard on Query / Views / Transformations.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Back-end (foundation) Working group X-stack PI Kickoff Meeting Sept 19, 2012.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
MAPLD Reconfigurable Computing Birds-of-a-Feather Programming Tools Jeffrey S. Vetter M. C. Smith, P. C. Roth O. O. Storaasli, S. R. Alam
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
HPC User Forum Back End Compiler Panel SiCortex Perspective Kevin Harris Compiler Manager April 2009.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
Spring 2003CSE P5481 Issues in Multiprocessors Which programming model for interprocessor communication shared memory regular loads & stores message passing.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Lecture 3 : Performance of Parallel Programs Courtesy : MIT Prof. Amarasinghe and Dr. Rabbah’s course note.
Breakout Group: Debugging David E. Skinner and Wolfgang E. Nagel IESP Workshop 3, October, Tsukuba, Japan.
Platform Abstraction Group 3. Question How to deal with different types hardware and software platforms? What detail to expose to the programmer? What.
Computing Systems: Next Call for Proposals Dr. Panagiotis Tsarchopoulos Computing Systems ICT Programme European Commission.
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
Priority Research Direction (use one slide for each) Key challenges What will you do to address the challenges?Brief overview of the barriers and gaps.
Background Computer System Architectures Computer System Software.
Page 1 2P13 Week 1. Page 2 Page 3 Page 4 Page 5.
CMSC 611: Advanced Computer Architecture Shared Memory Most slides adapted from David Patterson. Some from Mohomed Younis.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Architecting Web Services
For Massively Parallel Computation The Chaotic State of the Art
Chapter 2 Processes and Threads Today 2.1 Processes 2.2 Threads
Architecting Web Services
Department of Computer Science University of California,Santa Barbara
Many-core Software Development Platforms
CMSC 611: Advanced Computer Architecture
Power is Leading Design Constraint
Priority Research Direction (use one slide for each)
By Brian N. Bershad, Thomas E. Anderson, Edward D
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
The Vector-Thread Architecture
Operating Systems : Overview
Priority Research Direction (use one slide for each)
The University of Adelaide, School of Computer Science
Presentation transcript:

Programmability Hiroshi Nakashima Thomas Sterling

Key Challenges (1) Parallelism – Expose sufficient parallelism (multi billion-way) – Manage the massive parallelism in ensemble (hierarchy) – Reveal rich form and granularity of parallelism – Efficient exploitation of fine grained parallelism Distribution and resource assignment – Enables exploitation of separate concurrency of action – Need for some kind of global name space Locality management – Reduces latency of access and control – Exposure of object and control affinity

Key Challenges (2) Management of memory hierarchy – Transparent cache misses – Finite cache size and structure – Copy semantics and consistency(?) Latency hiding – Already said locality management – Intrinsic overlap of communication with computation to mitigate impact Hardware idiosyncrasies – E.g., TLB misses – Non-deterministic resolution of shared resource contention – Branch prediction, register renaming, etc.

Key Challenges (3) Legacy codes may not meet requirements for future Exascale systems – Rewrite only once, please. What is the paradigm or execution model for the programming model to satisfy and cooperate with remaining system components? – Distribution of responsibilities across system components Libraries – Code reuse – Decouples performance issue from logical function – Can adapt to your program requirements Should learn about your data structure, not you about library

Key Challenges (4) Interoperability – Between cooperating concurrently executing functionality – Exploit existing legacy codes during transitional periods Minimization of performance sensitivity Robust guarantees of correctness of result Elimination of over constraining synchronization bottlenecks – e.g., global barriers – Lightweight synchronization Re-empower strong scaling Portability – Different systems – Different scale – Different generations

Potential Impact on Software Component Need for new model of computation Programming model reflects user program parallelism Runtime system make available runtime information for decision chain Architecture and runtime minimize overhead to enable useful rich mechanisms for control, cooperation, and sharing Asynchrony management for out of order arrival of data transfers and service completion Guaranteed compound atomic operations for user programmed segments with efficient protection OS protocol to inform runtime system – bi directional exchange

Summary of Research Directions Separation of logical functionality from performance attributes New model of computation Diversity of parallelism forms and sizes Data directed execution Dynamic graph-based problems, encoding, and control New programming models that interoperate with old Dealing with memory hierarchies Advanced runtime systems Requirements for new ultra massive architecture Automatic runtime tuning for heterogeneous architectures

Potential Impact on Usability, Capability, & Breadth of Community Enormous Essential Ease of use Eternal Everyone

4.x Programmability Cross-cutting property of concurrency as it relates to programmability 100 thousand way parallelism Million-way parallelism 10 million-way parallelism 100 million-way parallelism Billion-way parallelism 10 billion-way parallelism Exposed Concurrency

4.x Programmability Technology drivers – Programming models and languages – Compiler analysis, distribution, and allocation – Runtime system software – OS – Architecture structure, semantics, and mechanisms

4.x Programmability Alternative R&D strategies – Models of computation Message passing with multi threaded processes Message-driven work-queue multithreaded – Programming models MPI-8 Event-driven multithreaded with GAS DSP and Declarative – Runtime system software

4.x Programmability Recommended research agenda – Model of computation – Decision chain across system layers – Protocols between successive layers

4.x Programmability Crosscutting considerations – It is one – Performance major hazard for programmabiltiy – Reliability Does the application program play a role in determining response to faults