NCSA Strategic Retreat: System Software Trends Bill Gropp.

Slides:



Advertisements
Similar presentations
Issues of HPC software From the experience of TH-1A Lu Yutong NUDT.
Advertisements

Technology Drivers Traditional HPC application drivers – OS noise, resource monitoring and management, memory footprint – Complexity of resources to be.
Large Scale Computing Systems
HadoopDB Inneke Ponet.  Introduction  Technologies for data analysis  HadoopDB  Desired properties  Layers of HadoopDB  HadoopDB Components.
2. Computer Clusters for Scalable Parallel Computing
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Parallelization Technology v 0.2 Parallel-Developers Discussion 6/29/11.
Introduction CS 524 – High-Performance Computing.
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
Earth Simulator Jari Halla-aho Pekka Keränen. Architecture MIMD type distributed memory 640 Nodes, 8 vector processors each. 16GB shared memory per node.
What is it? Hierarchical storage software developed in collaboration with five US department of Energy Labs since 1992 Allows storage management of 100s.
1 Computer Science, University of Warwick Architecture Classifications A taxonomy of parallel architectures: in 1972, Flynn categorised HPC architectures.
Leveling the Field for Multicore Open Systems Architectures Markus Levy President, EEMBC President, Multicore Association.
Project Proposal (Title + Abstract) Due Wednesday, September 4, 2013.
Advanced Topics: MapReduce ECE 454 Computer Systems Programming Topics: Reductions Implemented in Distributed Frameworks Distributed Key-Value Stores Hadoop.
3DAPAS/ECMLS panel Dynamic Distributed Data Intensive Analysis Environments for Life Sciences: June San Jose Geoffrey Fox, Shantenu Jha, Dan Katz,
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
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.
4.x Performance Technology drivers – Exascale systems will consist of complex configurations with a huge number of potentially heterogeneous components.
9/14/2015B.Ramamurthy1 Operating Systems : Overview Bina Ramamurthy CSE421/521.
Dilemma of Parallel Programming Xinhua Lin ( 林新华 ) HPC Lab of 17 th Oct 2011.
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
Center for Programming Models for Scalable Parallel Computing: Project Meeting Report Libraries, Languages, and Execution Models for Terascale Applications.
Advisor: Dr. Aamir Shafi Co-Advisor: Mr. Ali Sajjad Member: Dr. Hafiz Farooq Member: Mr. Tahir Azim Optimizing N-body Simulations for Multi-core Compute.
Compiler BE Panel IDC HPC User Forum April 2009 Don Kretsch Director, Sun Developer Tools Sun Microsystems.
Introduction to Apache Hadoop Zibo Wang. Introduction  What is Apache Hadoop?  Apache Hadoop is a software framework which provides open source libraries.
Extreme scale parallel and distributed systems – High performance computing systems Current No. 1 supercomputer Tianhe-2 at petaflops Pushing toward.
A Virtual Machine Monitor for Utilizing Non-dedicated Clusters Kenji Kaneda Yoshihiro Oyama Akinori Yonezawa (University of Tokyo)
Cluster Workstations. Recently the distinction between parallel and distributed computers has become blurred with the advent of the network of workstations.
Bleeding edge technology to transform Data into Knowledge HADOOP In pioneer days they used oxen for heavy pulling, and when one ox couldn’t budge a log,
Taking the Complexity out of Cluster Computing Vendor Update HPC User Forum Arend Dittmer Director Product Management HPC April,
The Limitation of MapReduce: A Probing Case and a Lightweight Solution Zhiqiang Ma Lin Gu Department of Computer Science and Engineering The Hong Kong.
MRPGA : An Extension of MapReduce for Parallelizing Genetic Algorithm Reporter :古乃卉.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Directed Reading 2 Key issues for the future of Software and Hardware for large scale Parallel Computing and the approaches to address these. Submitted.
SALSASALSASALSASALSA Design Pattern for Scientific Applications in DryadLINQ CTP DataCloud-SC11 Hui Li Yang Ruan, Yuduo Zhou Judy Qiu, Geoffrey Fox.
Big Data Vs. (Traditional) HPC Gagan Agrawal Ohio State ICPP Big Data Panel (09/12/2012)
HPC User Forum Back End Compiler Panel SiCortex Perspective Kevin Harris Compiler Manager April 2009.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Department of Computer and Information Sciences September 22, 2011 Toward the Embedded Petascale Architecture: The Dual Roles of.
© 2009 IBM Corporation Parallel Programming with X10/APGAS IBM UPC and X10 teams  Through languages –Asynchronous Co-Array Fortran –extension of CAF with.
1 Qualifying ExamWei Chen Unified Parallel C (UPC) and the Berkeley UPC Compiler Wei Chen the Berkeley UPC Group 3/11/07.
Grid Computing Framework A Java framework for managed modular distributed parallel computing.
1 "Workshop 31: Developing a Hands-on Undergraduate Parallel Programming Course with Pattern Programming SIGCSE The 44 th ACM Technical Symposium.
B5: Exascale Hardware. Capability Requirements Several different requirements –Exaflops/Exascale single application –Ensembles of Petaflop apps requiring.
HADOOP Carson Gallimore, Chris Zingraf, Jonathan Light.
Lawrence Livermore National Laboratory 1 Science & Technology Principal Directorate - Computation Directorate Scalable Fault Tolerance for Petascale Systems.
Nov 14, 08ACES III and SIAL1 ACES III and SIAL: technologies for petascale computing in chemistry and materials physics Erik Deumens, Victor Lotrich, Mark.
Parallel IO for Cluster Computing Tran, Van Hoai.
Background Computer System Architectures Computer System Software.
Next Generation of Apache Hadoop MapReduce Owen
BIG DATA/ Hadoop Interview Questions.
What is it and why it matters? Hadoop. What Is Hadoop? Hadoop is an open-source software framework for storing data and running applications on clusters.
COMP7330/7336 Advanced Parallel and Distributed Computing MapReduce - Introduction Dr. Xiao Qin Auburn University
Defining the Competencies for Leadership- Class Computing Education and Training Steven I. Gordon and Judith D. Gardiner August 3, 2010.
INTRODUCTION TO HIGH PERFORMANCE COMPUTING AND TERMINOLOGY.
Parallel Programming Models
Organizations Are Embracing New Opportunities
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CLOUD COMPUTING
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
SparkBWA: Speeding Up the Alignment of High-Throughput DNA Sequencing Data - Aditi Thuse.
Software Engineering Introduction to Apache Hadoop Map Reduce
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
CS 345A Data Mining MapReduce This presentation has been altered.
Distributed Systems (15-440)
Presentation transcript:

NCSA Strategic Retreat: System Software Trends Bill Gropp

Driving Forces Hardware – Power constraints have limited clock speeds; no significant increase since 2006 or expected for the next 5-10 years – Multicore/manycore makes everything parallel – Changes in memory architecture (performance, power) – Heterogeneous processing elements (currently GPGPUs, later different elements on processor die) – Disk size makes TB a typical student laptop disk – Concern about Fault rate Software – Complexity of software in applications Algorithms – Complexity of applications in software

Trends in Software Programming Languages/Models Operating Systems File Systems Development Environments

Programming Models and Languages Node programming – Algorithm/domain specific for multicore systems (e.g., TBB) – GPGPUs (X + OpenCL) – Autotuning; source to source transformations – Scripting, multilingual programming (Distributed Memory) Parallel programming – The usual suspects MPI; MPI + hybrid (threaded) model PGAS (UPC, CAF); next Gen (Chapel, X10+, Fortress…) GA, SHMEM, … – New(ish) Parallel Data processing models/languages – MapReduce (Hadoop) – DAGs (DryadLinq)

Operating Systems Light-weight for appliances (e.g., iPad) Low-jitter for MPP – Less than single system image, but some coordinated activities Scalability to SMP Virtualization (Hypervisors) Security and robustness

File Systems Tweeks on POSIX API – Shared (“global file system”) – Performance, robustness variations – Non-POSIX API (parallel update semantics, e.g.) – ACLs Data bases; Systems for data processing – Google file system etc. Alternative persistent store models – Not a byte-stream model – Access methods within object/class Hierarchical systems

Development Environments “Domain specific” languages IDE – Eclipse Frameworks and libraries – Application areas Debuggers See programming languages (e.g., multilingual applications)

Summary Most likely direction – HPC – Business as usual, with increased use of automation in code generation and tuning – Scalability issues will drive changes in commodity systems, but not necessarily in directions needed by HPC applications (see Linux Thread Scheduler) – New data management, possibly with low-level support Exascale directions add – Fault tolerance becomes critical – Latency hiding/tolerances becomes critical