1 University of Maryland Runtime Program Evolution Jeff Hollingsworth © Copyright 2000, Jeffrey K. Hollingsworth, All Rights Reserved. University of Maryland.

Slides:



Advertisements
Similar presentations
Database System Concepts and Architecture
Advertisements

Haystack: Per-User Information Environment 1999 Conference on Information and Knowledge Management Eytan Adar et al Presented by Xiao Hu CS491CXZ.
Introduction CSCI 444/544 Operating Systems Fall 2008.
VxWorks Real-Time Kernel Connectivity
Computer Science 313 – Advanced Programming Topics.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Nick Trebon, Alan Morris, Jaideep Ray, Sameer Shende, Allen Malony {ntrebon, amorris, Department of.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Overview of Database Languages and Architectures.
Network File System (NFS) in AIX System COSC513 Operation Systems Instructor: Prof. Anvari Yuan Ma SID:
OPERATING SYSTEMS Prof. Sujata Rao Lesson 3. Agenda 1. What is an operating system? 2. How have operating systems evolved? 3. Functions of Operating System.
Portable and Predictable Performance on Heterogeneous Embedded Manycores (ARTEMIS ) ARTEMIS Project Review 28 nd October 2014 Multimedia Demonstrator.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Department of Computer Science Engineering SRM University
ASP.NET The.NET Framework. The.NET Framework is Microsoft’s distributed run-time environment for creating, deploying, and using applications over the.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
A Metadata Based Approach For Supporting Subsetting Queries Over Parallel HDF5 Datasets Vignesh Santhanagopalan Graduate Student Department Of CSE.
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
 Protocols used by network systems are not effective to distributed system  Special requirements are needed here.  They are in cases of: Transparency.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
The τ - Synopses System Yossi Matias Leon Portman Tel Aviv University.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Distributed Database Systems Overview
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Automated Control in Cloud Computing: Challenges and Opportunities Harold C. Lim, Shivnath Babu, Jeffrey S. Chase, and Sujay S. Parekh ACM’s First Workshop.
Chapter 2 Database Systems Architecture. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.2-2 Topics in this Chapter Three levels of architecture.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Chapter 2 Introduction to Systems Architecture. Chapter goals Discuss the development of automated computing Describe the general capabilities of a computer.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
University of Maryland Towards Automated Tuning of Parallel Programs Jeffrey K. Hollingsworth Department of Computer Science University.
Allen D. Malony Department of Computer and Information Science TAU Performance Research Laboratory University of Oregon Discussion:
VMware vSphere Configuration and Management v6
Faucets Queuing System Presented by, Sameer Kumar.
Data Management for Decision Support Session-4 Prof. Bharat Bhasker.
Gedae, Inc. Gedae: Auto Coding to a Virtual Machine Authors: William I. Lundgren, Kerry B. Barnes, James W. Steed HPEC 2004.
Connections to Other Packages The Cactus Team Albert Einstein Institute
Virtualization and Databases Ashraf Aboulnaga University of Waterloo.
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
31 Oktober 2000 SEESCOASEESCOA STWW - Programma Work Package 5 – Debugging Task Generic Debug Interface K. De Bosschere e.a.
Lecture III: Challenges for software engineering with the cloud CS 4593 Cloud-Oriented Big Data and Software Engineering.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
EPICS and LabVIEW Tony Vento, National Instruments
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary Copyright © 2009 Ericsson, Made available under the Eclipse Public License.
Cluster computing. 1.What is cluster computing? 2.Need of cluster computing. 3.Architecture 4.Applications of cluster computing 5.Advantages of cluster.
WebScan: Implementing QueryServer 2.0 Karl Geiger, Amgen Inc. BRS NA UG August 1999.
Capacity Planning in a Virtual Environment Chris Chesley, Sr. Systems Engineer
LIOProf: Exposing Lustre File System Behavior for I/O Middleware
Chapter 16 Client/Server Computing Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Efficient Instrumentation for Code Coverage Testing
Lecture 2: Performance Evaluation
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
Grid Computing.
University of Technology
Database Performance Tuning and Query Optimization
Database System Concepts and Architecture
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Unit Test Pattern.
Capriccio – A Thread Model
Computer Simulation of Networks
Data, Databases, and DBMSs
Software Defined Networking (SDN)
Oracle Architecture Overview
Chapter 11 Database Performance Tuning and Query Optimization
Performance And Scalability In Oracle9i And SQL Server 2000
Presentation transcript:

1 University of Maryland Runtime Program Evolution Jeff Hollingsworth © Copyright 2000, Jeffrey K. Hollingsworth, All Rights Reserved. University of Maryland UMIACS

2 University of Maryland Expanding the Application/System Interface Past Model: Start program execution, hope for best New Model: Application exposes alternatives different algorithms/parameters performance expectations for options System adapts application to optimize execution

3 University of Maryland Harmony Structure Tuning Control Applications and Libraries System Controller Capacities and Requirements Tuning Options Tuning Control Availabilities and Requirements Metric Interface Resource Requirements

4 University of Maryland Features of Harmony RSL Bundles –primary unit of adaptation –mutually exclusive sets of application options Resource Requirements –expected utilization for each option and resource Performance Prediction –expected performance of selected bundles –allows optimizing multiple applications on a system

5 University of Maryland Harmony API harmony_startup(, ) harmony_bundle_setup(“ ”) void *harmony_add_variable(“name”,,, ) harmony_wait_for_update() harmony_end() Used by application to: –define options –learn of harmony selections –receive information about the environment

6 University of Maryland Architecture of Harmony Implementation

7 University of Maryland Example: Database Query Processing Queries Processed on Cluster SMP Active Disks Existing PC Cluster Queries Processed on SMP SMP Active Disks Existing PC Cluster Harmony allows building adaptive systems –Workload can change where computation is done

8 University of Maryland Database Bundle harmonyBundle Dbclient:1 where { {QS{node server {seconds 9} {memory 20}} {node client {seconds 1} {memory 42}} {link client server 2} } {DS{nodeserver {seconds 1} {memory 20}} {node client {memory >=17} {seconds 9}} {link client server {44 + (client.memory > 24 ? 24 : client.memory) - 17}} }

9 University of Maryland Client Response Times Clients added one at a time: –First two clients run with query-shipping –Third client flips all to data-shipping

10 University of Maryland Results from PSTSWM Solves nonlinear shallow water equations Contains many options: –Multiple algorithms embedded in the code –Problem-specific options Communication Parameters

11 University of Maryland Integration with ADR Allows ADR Applications to –automatically adapt to available resources –support multiple users more efficiently Use Harmony to –select number of outstanding I/O requests –manage memory allocation –share information between clients & servers

12 University of Maryland Gathering Information Data Affinity –Shared Memory Systems Need Locality –Large Datasets should be processed near source Example: DSM Correlation 4-processors8-processors (random layout)

13 University of Maryland Runtime Code Patching Permits –Modifying code at runtime –Inserting instrumentation into running systems –Machine independent representation of a program Can be used for –Performance measurement –Correctness debugging –Testing Code coverage Hard to execute paths

14 University of Maryland Applications of Runtime Code Patching Performance measurement –Recording application behavior Correctness debugging –Fast conditional breakpoints –Data breakpoints Execution driven simulation –Architecture studies Testing –Code coverage testing –Forcing hard to execute paths to be taken

15 University of Maryland Current Work Application resource usage –potential, not necessarily achievable –user, compiler, profiling Performance prediction –structural models –POEMS, AppLeS ADR & Vision Integration More applications –web server –video server –commercial database system

16 University of Maryland Conclusions Launch and forget is not sufficient: –Capacities are dynamic –Demands are dynamic System-directed adaptation gives us: –Complete information –Handles to running applications But requires: –Application restructuring (or layering, i.e. DSM) –Detailed resource requirements Data Collection –Enables better choices to be made