Benchmarks Breakout.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

Dynamic Optimization using ADORE Framework 10/22/2003 Wei Hsu Computer Science and Engineering Department University of Minnesota.
8. Code Generation. Generate executable code for a target machine that is a faithful representation of the semantics of the source code Depends not only.
Overview Motivations Basic static and dynamic optimization methods ADAPT Dynamo.
Does Training Input Selection Matter for Feedback-Directed Optimizations? Paul Berube University of Alberta CDP05, October 17, 2005.
3: OS Structures 1 OPERATING SYSTEM STRUCTURES PROCESS MANAGEMENT A process is a program in execution: (A program is passive, a process active.) A process.
CSCE 212 Chapter 4: Assessing and Understanding Performance Instructor: Jason D. Bakos.
1 Breakout thoughts (compiled with N. Carter): Where will RAMP be in 3-5 Years (What is RAMP, where is it going?) Is it still RAMP if it is mapping onto.
Reference Book: Modern Compiler Design by Grune, Bal, Jacobs and Langendoen Wiley 2000.
1 Programming Languages Translation  Lecture Objectives:  Be able to list and explain five features of the Java programming language.  Be able to explain.
Types of software. Sonam Dema..
Google Distributed System and Hadoop Lakshmi Thyagarajan.
Computer System Architectures Computer System Software
Measuring Synchronisation and Scheduling Overheads in OpenMP J. Mark Bull EPCC University of Edinburgh, UK
Uncovering the Multicore Processor Bottlenecks Server Design Summit Shay Gal-On Director of Technology, EEMBC.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
(1) A Beginner’s Quick Start to SIMICS. (2) Disclaimer This is a quick start document to help users get set up quickly Does not replace the user guide.
(1) Scheduling for Multithreaded Chip Multiprocessors (Multithreaded CMPs)
Virtualization Part 2 – VMware. Virtualization 2 CS5204 – Operating Systems VMware: binary translation Hypervisor VMM Base Functionality (e.g. scheduling)
Conrad Benham Java Opcode and Runtime Data Analysis By: Conrad Benham Supervisor: Professor Arthur Sale.
October 18, 2005 Charm++ Workshop Faucets A Framework for Developing Cluster and Grid Scheduling Solutions Presented by Esteban Pauli Parallel Programming.
DRAFT CAMP Platform Component Canonical Types, etc. Copyright © 2012 OASIS Open.
CMT OS scheduling summary Yipkei Kwok 03/18/2008.
A User-Lever Concurrency Manager Hongsheng Lu & Kai Xiao.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Workshop BigSim Large Parallel Machine Simulation Presented by Eric Bohm PPL Charm Workshop 2004.
Rassul Ayani 1 Performance of parallel and distributed systems  What is the purpose of measurement?  To evaluate a system (or an architecture)  To compare.
Simics: A Full System Simulation Platform Synopsis by Jen Miller 19 March 2004.
MK++ A High Assurance Operating System Kernel Shai Guday David Black.
© Michel Dubois, Murali Annavaram, Per Strenstrom All rights reserved Embedded Computer Architecture 5SAI0 Simulation - chapter 9 - Luc Waeijen 16 Nov.
CSE 598c – Virtual Machines Survey Proposal: Improving Performance for the JVM Sandra Rueda.
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
services/load-stress-performance- testing.php Computer Platforms Evaluating performance.
Shouqing Hao Institute of Computing Technology, Chinese Academy of Sciences Processes Scheduling on Heterogeneous Multi-core Architecture.
Chapter 10 Software quality. This chapter discusses n Some important properties we want our system to have, specifically correctness and maintainability.
FTC-Charm++: An In-Memory Checkpoint-Based Fault Tolerant Runtime for Charm++ and MPI Gengbin Zheng Lixia Shi Laxmikant V. Kale Parallel Programming Lab.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
ENGINEERING PRACTICES FOR CONTINUOUS DELIVERY: From Metrics and Deployment Pipelines to Integration and Microservices By Neal Ford with Tim Brown Deployment.
Department of Computer Science DCS COMSATS Institute of Information Technology Thread level parallelism of desktop applications Presented by Muhammad Kamran.
Our Graphics Environment Landscape Rendering. Hardware  CPU  Modern CPUs are multicore processors  User programs can run at the same time as other.
CSCI206 - Computer Organization & Programming
Modularity Most useful abstractions an OS wants to offer can’t be directly realized by hardware Modularity is one technique the OS uses to provide better.
Agenda Hardware Virtualization Concepts
Done By: Ashlee Lizarraga Ricky Usher Jacinto Roches Eli Gomez
Dynamo: A Runtime Codesign Environment
Programming Language Hierarchy, Phases of a Java Program
SOFTWARE DESIGN AND ARCHITECTURE
Investigation of the improved performance on Haswell processors
Stefan Kaestle, Reto Achermann, Timothy Roscoe, Tim Harris ATC’15
Sending a few stragglers home
Computing Resource Allocation and Scheduling in A Data Center
Steven Whitham Jeremy Woods
Performance Evaluation of Adaptive MPI
CSCE 212 Chapter 4: Assessing and Understanding Performance
Many-core Software Development Platforms
Varonis Overview.
Intel® Parallel Studio and Advisor
Department of Computer Science University of California, Santa Barbara
CSCI206 - Computer Organization & Programming
Benjamin Goldberg Compiler Verification and Optimization
Human Complexity of Software
Center for Resilient Infrastructures, Systems, and Processes (CRISP)
Introduction to Micro Controllers & Embedded System Design
Software Acceleration in Hybrid Systems Xiaoqiao (XQ) Meng IBM T. J
Overview of Workflows: Why Use Them?
Last section! Project 4 + EC due tomorrow Today: Project 4 questions
Department of Computer Science University of California, Santa Barbara
Compiler Structures 1. Overview Objective
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Presentation transcript:

Benchmarks Breakout

Target Applications Run experiments to derive platform properties as inputs to models properties specific to particular workload User picks a mixture of interesting micro workloads Benchmark is generated automagically

Target Applications Detect processor capabilities for virtual machine self adaptation but micro benchmarks for this are rare But also detect platform capabilities how long it takes to start a thread adapt at application start time Investigate particular optimizations especially in compiler development also optimizations at runtime Accuracy of few percent matters

Target Applications Parallel workload for component measurement isolated measurements are bad Replacing large benchmarks approximating workload of big benchmark because that one is too expensive to run

Issues Benchmarking in virtualized system Micro benchmarks can mislead Too many benchmarks execution time developer attention Enforcing stable conditions quickly Knowing which axes to exercise Balancing the costs of benchmarking at runtime

Multicore ? We keep discovering things about our platforms Not one person who knows ... Acceptable ? compiler developers usually accept that application developers run away ? need to know when to care should developers care ? not if we can do better but can we ? Some optimization is “cheating” (not everyone can get the same benefit)