Software Working Group Chairman’s Note: This document was prepared by the “software and applications” working group and was received by the entire workshop.

Slides:



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

Priority Research Direction Key challenges General Evaluation of current algorithms Evaluation of use of algorithms in Applications Application of “standard”
Performance Metrics Inspired by P. Kent at BES Workshop Run larger: Length, Spatial extent, #Atoms, Weak scaling Run longer: Time steps, Optimizations,
Parallel Programming Motivation and terminology – from ACM/IEEE 2013 curricula.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
DEPARTMENT OF COMPUTER LOUISIANA STATE UNIVERSITY Models without Borders Thomas Sterling Arnaud & Edwards Professor, Department of Computer Science.
Priority Research Direction: Portable de facto standard software frameworks Key challenges Establish forums for multi-institutional discussions. Define.
Software Failure: Reasons Incorrect, missing, impossible requirements * Requirement validation. Incorrect specification * Specification verification. Faulty.
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Week 1- Fall 2009 Dr. Kimberly E. Newman University of Colorado.
Some Thoughts on Technology and Strategies for Petaflops.
OCIN Workshop Wrapup Bill Dally. Thanks To Funding –NSF - Timothy Pinkston, Federica Darema, Mike Foster –UC Discovery Program Organization –Jane Klickman,
Software Evolution Managing the processes of software system change
Lecture 7 Evaluation. Purpose Assessment of the result Against requirements Qualitative Quantitative User trials Etc Assessment of and Reflection on process.
1 CMSC 132: Object-Oriented Programming II Software Development III Department of Computer Science University of Maryland, College Park.
FIGURE 1-1 A Computer System
Research Directions for On-chip Network Microarchitectures Luca Carloni, Steve Keckler, Robert Mullins, Vijay Narayanan, Steve Reinhardt, Michael Taylor.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
SE 112 Slide 1 SE 112 l
Data Structures and Programming.  John Edgar2.
New Direction Proposal: An OpenFabrics Framework for high-performance I/O apps OFA TAC, Key drivers: Sean Hefty, Paul Grun.
Lecture 29 Fall 2006 Lecture 29: Parallel Programming Overview.
Computer System Architectures Computer System Software
Priority Research Direction Key challenges Fault oblivious, Error tolerant software Hybrid and hierarchical based algorithms (eg linear algebra split across.
Overview of Future Hardware Technologies The chairman’s notes from the plenary session appear in blue throughout this document. Subject to these notes.
4.x Performance Technology drivers – Exascale systems will consist of complex configurations with a huge number of potentially heterogeneous components.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
Session 8 Scoring Method Project for Capacity Development for Implementing the Organic Law at the Capital and Provincial Level (PILAC 2)
Extreme scale parallel and distributed systems – High performance computing systems Current No. 1 supercomputer Tianhe-2 at petaflops Pushing toward.
Multi-core Programming Introduction Topics. Topics General Ideas Moore’s Law Amdahl's Law Processes and Threads Concurrency vs. Parallelism.
Introduction, background, jargon Jakub Yaghob. Literature T.G.Mattson, B.A.Sanders, B.L.Massingill: Patterns for Parallel Programming, Addison- Wesley,
If Exascale by 2018, Really? Yes, if we want it, and here is how Laxmikant Kale.
GPU in HPC Scott A. Friedman ATS Research Computing Technologies.
Taking the Complexity out of Cluster Computing Vendor Update HPC User Forum Arend Dittmer Director Product Management HPC April,
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
SpaceWire Plug-and-Play: A Roadmap Peter Mendham, Albert Ferrer Florit, Steve Parkes Space Technology Centre, University of Dundee 1.
Alternative ProcessorsHPC User Forum Panel1 HPC User Forum Alternative Processor Panel Results 2008.
HPC User Forum Back End Compiler Panel SiCortex Perspective Kevin Harris Compiler Manager April 2009.
Extreme Hardware “Extreme” Definition: very great Synonyms:...consummate, great, greatest, high, highest, intense, maximal, maximum, severe, sovereign,
Numerical Libraries Project Microsoft Incubation Group Mary Beth Hribar Microsoft Corporation CSCAPES Workshop June 10, 2008 Copyright Microsoft Corporation,
CSC 7600 Lecture 28 : Final Exam Review Spring 2010 HIGH PERFORMANCE COMPUTING: MODELS, METHODS, & MEANS FINAL EXAM REVIEW Daniel Kogler, Chirag Dekate.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
System On Chip Devices for High Performance Computing Design Automation Conference 2015 System On Chip Workshop Noel Wheeler
1 Recommendations Now that 40 GbE has been adopted as part of the 802.3ba Task Force, there is a need to consider inter-switch links applications at 40.
Breakout Group: Debugging David E. Skinner and Wolfgang E. Nagel IESP Workshop 3, October, Tsukuba, Japan.
Programmability Hiroshi Nakashima Thomas Sterling.
B5: Exascale Hardware. Capability Requirements Several different requirements –Exaflops/Exascale single application –Ensembles of Petaflop apps requiring.
Extreme Computing’05 Parallel Graph Algorithms: Architectural Demands of Pathological Applications Bruce Hendrickson Jonathan Berry Keith Underwood Sandia.
Computing Systems: Next Call for Proposals Dr. Panagiotis Tsarchopoulos Computing Systems ICT Programme European Commission.
… begin …. Parallel Computing: What is it good for? William M. Jones, Ph.D. Assistant Professor Computer Science Department Coastal Carolina University.
1 CSC 4700 Software Engineering John Lewis These slides are based on originals provided by Ian Sommerville.
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
Parallel Computing Presented by Justin Reschke
CERN VISIONS LEP  web LHC  grid-cloud HL-LHC/FCC  ?? Proposal: von-Neumann  NON-Neumann Table 1: Nick Tredennick’s Paradigm Classification Scheme Early.
Page 1 2P13 Week 1. Page 2 Page 3 Page 4 Page 5.
ORNL is managed by UT-Battelle for the US Department of Energy Musings about SOS Buddy Bland Presented to: SOS20 Conference March 25, 2016 Asheville, NC.
Case Study of Agile Development Ronald J. Leach Copyright Ronald J. Leach, 1997, 2009, 2014,
Geoffrey Fox Panel Talk: February
Conclusions on CS3014 David Gregg Department of Computer Science
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
Software Metrics 1.
Scaling for the Future Katherine Yelick U.C. Berkeley, EECS
Designing Software for Ease of Extension and Contraction
Toward a Unified HPC and Big Data Runtime
An Embedded Systems Course and Course
Alternative Processor Panel Results 2008
Presentation transcript:

Software Working Group Chairman’s Note: This document was prepared by the “software and applications” working group and was received by the entire workshop in plenary session without modification.

Findings What we’ve learned over the last 15 years –Successes –Challenges that have emerged in the last 15 years Current concerns and needs for the next 5-10 years Impact of new hardware technologies

Five improvements in the last 15 years? Experience with systems and some applications at large- scale Independent software vendors now support distributed memory programming paradigms, narrowing programming models Commercial interest in exploiting multicore architectures Opportunity to use our community experience with extreme concurrency on mesh-based applications (more generally, apps with geometric-based decompositions) Adoption of software components in some legacy applications has provided a route for the evolution of codes in terms of algorithms, software, and even languages

Five priority challenges – emphasizing what has changed in the last 15 years? Fault tolerance for hardware unreliability Growth and change of the memory wall problem (latency and bandwidth) Greater demand for application concurrency (to exist and to be exposed) Fragility of the software stack Relationship between commodity and HPC hardware and software

Five present concerns Independent software vendors are not thinking at the necessary scales Few participants from academia have access to the state of the art HPC systems Exhaustion of precision at new application scales (Validation and) Verification problem is becoming unavoidable and intractable Legacy and new code present some different issues (and may need different solutions)

Impact of New Hardware Technologies Modifications/extensions to current approaches (languages, libraries, etc.) probably sufficient –Software doesn’t care whether digital logic uses CMOS or nanotubes –Completely different approaches should also be considered and supported as high risk, high payoff

Recommendations Reflect three major hardware directions: –Commodity architectures following Moore’s Law to at least 2020 –Specialty/Custom Architectures –Discontinuities (e.g., Quantum computer) 17% per year improvement (by some metric, on some classes of apps), sustained, would have great impact –Exponential improvement is one way to create a qualitative difference from evolutionary, quantitative improvements –A software roadmap could help Realistic targets should be drawn from application needs Metrics must be chosen carefully to ensure solutions address classes of applications, not model problems or individual apps

Software for Commodity Software needs to address issues of –Memory Wall –Concurrency –Interoperation with other tools –Performance comprehension –Faults and errors

Software for Specialty Architectures In addition to commodity issues, –Algorithms and performance comprehension for unique features in specialty architectures (e.g., techniques for streams, vectors, threads, parcels, …) –System software to lower the overall cost Concerns about hardware –Scalar performance (and other Amdahl law effects) –More software/hardware co-design Adoption path for legacy software and legacy software developers –What are the minimal extensions to MPI, C, and Fortran to exploit unique features? Analogue is vector or multithread extensions to Fortran, not a new language

Discontinuities Software that supports coprocessors –E.g., quantum co-processor attached to conventional system –Also applies to hybrid systems (Commodity + FPGA, PIM, …) Custom languages (such as ones for quantum computers)

Working Group Members Bailey, David Bergman, Larry DeHon, Andre Foster, Michael Fox, Geoffrey Gropp, Bill Gustafson, John Hendrickson, Bruce Jardin, Steve Johnson, Fred Keyes, David McCabe, Barney Nichols, Jeff Pundit, Neil Saphir, Bill Tufo, Henry Williams, Colin Womble, David