Instrumentation and Measurement CSci 599 Class Presentation Shreyans Mehta.

Slides:



Advertisements
Similar presentations
Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk Spring 2011 Semester Project.
Advertisements

WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Paradyn. Paradyn Goals Performance measurement tool that –scales to long-running programs on large parallel and distributed systems –automates much of.
Helper Threads via Virtual Multithreading on an experimental Itanium 2 processor platform. Perry H Wang et. Al.
Chapter 13 Embedded Systems
Chapter 13 Embedded Systems Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Performance Analysis And Visualization By:Mehdi Semsarzadeh Chapter 15.
1 Lecture 6 Performance Measurement and Improvement.
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
DISTRIBUTED CONSISTENCY MANAGEMENT IN A SINGLE ADDRESS SPACE DISTRIBUTED OPERATING SYSTEM Sombrero.
1: Operating Systems Overview
Threads 1 CS502 Spring 2006 Threads CS-502 Spring 2006.
1 Dr. Frederica Darema Senior Science and Technology Advisor NSF Future Parallel Computing Systems – what to remember from the past RAMP Workshop FCRC.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 14 Server and Network Monitoring.
Educational Computer Architecture Experimentation Tool Dr. Abdelhafid Bouhraoua.
COM181 Computer Hardware Ian McCrumRoom 5B18,
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
CH 13 Server and Network Monitoring. Hands-On Microsoft Windows Server Objectives Understand the importance of server monitoring Monitor server.
Windows Server 2008 Chapter 11 Last Update
Research & Development Roadmap 1. Outline A New Communication Framework Giving Bro Control over the Network Security Monitoring for Industrial Control.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Principles Of Digital Design Chapter 1 Introduction Design Representation Levels of Abstraction Design Tasks and Design Processes CAD Tools.
Computer Architecture. “The design of a computer system. It sets the standard for all devices that connect to it and all the software that runs on it.
1 Advance Computer Architecture CSE 8383 Ranya Alawadhi.
Performance Model & Tools Summary Hung-Hsun Su UPC Group, HCS lab 2/5/2004.
March 17, 2005 Roadmap of Upcoming Research, Features and Releases Bart Miller & Jeff Hollingsworth.
CS 584. Performance Analysis Remember: In measuring, we change what we are measuring. 3 Basic Steps Data Collection Data Transformation Data Visualization.
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Windows 2000 Course Summary Computing Department, Lancaster University, UK.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
ACMSE’04, ALDepartment of Electrical and Computer Engineering - UAH Execution Characteristics of SPEC CPU2000 Benchmarks: Intel C++ vs. Microsoft VC++
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
March 12, 2001 Kperfmon-MP Multiprocessor Kernel Performance Profiling Alex Mirgorodskii Computer Sciences Department University of Wisconsin.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
Ihr Logo Operating Systems Internals & Design Principles Fifth Edition William Stallings Chapter 2 (Part II) Operating System Overview.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
1 Vulnerability Assessment Elisa Heymann Computer Architecture and Operating Systems Department Universitat Autònoma de Barcelona
The Mach System Abraham Silberschatz, Peter Baer Galvin, Greg Gagne Presentation By: Agnimitra Roy.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
Evaluating and Improving an OpenMP-based Circuit Design Tool Tim Beatty, Dr. Ken Kent, Dr. Eric Aubanel Faculty of Computer Science University of New Brunswick.
Allen D. Malony Department of Computer and Information Science TAU Performance Research Laboratory University of Oregon Discussion:
Tool Visualizations, Metrics, and Profiled Entities Overview [Brief Version] Adam Leko HCS Research Laboratory University of Florida.
Gedae, Inc. Gedae: Auto Coding to a Virtual Machine Authors: William I. Lundgren, Kerry B. Barnes, James W. Steed HPEC 2004.
Overview of AIMS Hans Sherburne UPC Group HCS Research Laboratory University of Florida Color encoding key: Blue: Information Red: Negative note Green:
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
CSCI1600: Embedded and Real Time Software Lecture 33: Worst Case Execution Time Steven Reiss, Fall 2015.
1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
Vertical Profiling : Understanding the Behavior of Object-Oriented Applications Sookmyung Women’s Univ. PsLab Sewon,Moon.
CDA-5155 Computer Architecture Principles Fall 2000 Multiprocessor Architectures.
1 University of Maryland Using Information About Cache Evictions to Measure the Interactions of Application Data Structures Bryan R. Buck Jeffrey K. Hollingsworth.
Kai Li, Allen D. Malony, Sameer Shende, Robert Bell
Hands-On Microsoft Windows Server 2008
Computer Organisation
Parallel Objects: Virtualization & In-Process Components
What we need to be able to count to tune programs
CSCI1600: Embedded and Real Time Software
Operating Systems Bina Ramamurthy CSE421 11/27/2018 B.Ramamurthy.
Analysis models and design models
Operating Systems : Overview
EE 4xx: Computer Architecture and Performance Programming
Operating Systems : Overview
CSCI1600: Embedded and Real Time Software
From Use Cases to Implementation
Presentation transcript:

Instrumentation and Measurement CSci 599 Class Presentation Shreyans Mehta

Abstract Why Instrumentation and Measurement ? Instrumentation Techniques Resources Data Analysis Case Study: Paradyn –Guiding Principles –System Overview –W 3 Search Model

Why Instrumentation and Measurement ? Gathering data to improve the next execution of the program. Guiding scheduling decisions Adapting to computations while in execution

Instrumentation Techniques Program Instrumentation Techniques –Manual : Programmer inserted directives –Automatic : No direct user involvement Binary Rewriting Dynamic Instrumentation Processor Instrumentation Techniques –Information includes timers, memory system performance, processor usage, etc. –Available mostly through special registers or memory mapped location. Example : Pentium Pro provides performance data through MSRs. These registers include 64 bit cycle clock and counts of memory read /write, L1 cache misses, pipeline flushes, etc. –Hardware assisted trace generation.

Operating System Instrumentation Techniques –Information includes behavior of virtual memory, file system, file cache etc. –Instrumentation in the form of APIs for applications to access these variables. Network Instrumentation Techniques –Ways of measuring Passive –Example: RMON protocol defines SNMP MIB variables to report traffic statistics over hubs and switches. Active –Example: Ping, NWS in grid style computing.

Data Storage Representation Scalars –Counters –Times Traces Vector series

Resources Software Abstractions –Program Components –Code in Executions –Synchronization Objects –Other Software Abstractions Hardware Abstractions Network Abstractions

Data Analysis Quantitative Performance Automating Performance Diagnosis Perturbation Analysis

The Paradyn Parallel Performance Measurement Tools Case Study

Guiding Principles and Characteristics Scalability Automate the search for performance problems Provide well-defined data abstractions Support heterogeneous environments Support high level parallel languages Open interfaces for visualization and new data sources Streamlined use

System Overview Basic Abstractions –Metric-focus grid –Time Histograms Components of the System –Main Paradyn Process Performance Consultant Visualization Manager Data Manager User Interface Manager –Paradyn daemons –External Visualization Processes.

Histogram VisualizationTable Visualization Tabular Summary CPU Messages Metric Manager Instrumentation Manager Metric Manager Instrumentation Manager Visualization Manager User Interface Manager Performance Consultant Data Manager Application Processes Visi Thread Paradyn Daemon(s) Paradyn

Dynamic Instrumentation Dynamic Instrumentation Interface –Metric Manager –Instrumentation Manager Points, Primitives and Predicates addCounter(fooFlg, 1) Foo() { …. } SendMsg( dest, ptr, cnt, size) { …. } if (fooFlg) startTimer(msgTme, ProcTime) if (fooFlg) stopTimer(msgTme)

Instrumentation generation –Base Trampolines –Mini-Trampolines Data Collection Internal Uses of Dynamic Instrumentation –Resource Discovery –Collection of dynamic mapping information for HLL.

The W 3 Search Model and the Performance Consultant Why ? Where ? When ? –The “Why” Axis Why is the application performing poorly ? –Potential performance problems are represented as hypotheses and tests. –Hypotheses represent activities universal to all parallel computations. –Hypotheses can be refined into more refined hypotheses using a search hierarchy. –Tests are Boolean functions that evaluate the validity of a hypotheses. –Tests are expressed in terms of a threshold and metrics calculated by the Instrumentation Manager.

A sample “why” axis with several hypotheses TopLevelHypotheses SyncBottleNeck HighSyncBlockingTimeFrequentSyncOperations HighSyncContentionHighSyncHoldingTime

–The “Where” Axis Where is the performance problem ? –Pinpoints the problem specific to program components. –Each hierarchy in “where” axis has multiple levels, with the leaf nodes being the instances of resources used by the application. SyncObject Semaphores MessageSpinLockBarier

–The “When” Axis When does the problem occur ? –Represents periods of time during which performance problems can occur. The Performance Consultant –This module discovers performance problems by searching the space defined by W 3 Search Model. –Fully automated search but also allows user to make manual refinements.

Open Visualization Interface Paradyn provides a simple library and RPC interface to access performance data in real- time. Visualization modules (visi’s) in Paradyn are external processes that use this library and interface. Currently provides visi’s for time- histograms, bar charts and tables.

Examples of Use

Conclusion Computational grids are focused on high performance distributed computing. To achieve high performance, such systems need to provide tools that enable the programmer to realize the potential performance inherent in such a system.

References Jeffery K. Hollingsworth and Bart Miller, “Instrumentation and Measurement”, Chapter 14 of Grid: The Blueprint for a new computing infrastructure. Bart Miller, “The Paradyn Parallel Performance Measurement Tools”,