Chapter 4 M. Keshtgary Spring 91 Type of Workloads.

Slides:



Advertisements
Similar presentations
11 Measuring performance Kosarev Nikolay MIPT Feb, 2010.
Advertisements

Chapter 8: Central Processing Unit
Chapter 8. Pipelining. Instruction Hazards Overview Whenever the stream of instructions supplied by the instruction fetch unit is interrupted, the pipeline.
TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
Workloads Experimental environment prototype real sys exec- driven sim trace- driven sim stochastic sim Live workload Benchmark applications Micro- benchmark.
CMPT 300: Operating Systems I Dr. Mohamed Hefeeda
CSCE 212 Chapter 4: Assessing and Understanding Performance Instructor: Jason D. Bakos.
Chapter 4 Assessing and Understanding Performance Bo Cheng.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
Computational Astrophysics: Methodology 1.Identify astrophysical problem 2.Write down corresponding equations 3.Identify numerical algorithm 4.Find a computer.
1 CSE SUNY New Paltz Chapter 2 Performance and Its Measurement.
Computer Performance Evaluation: Cycles Per Instruction (CPI)
1 Lecture 11: Digital Design Today’s topics:  Evaluating a system  Intro to boolean functions.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.1 Introduction.
Chapter 4 Assessing and Understanding Performance
Fall 2001CS 4471 Chapter 2: Performance CS 447 Jason Bakos.
1 Lecture 10: FP, Performance Metrics Today’s topics:  IEEE 754 representations  FP arithmetic  Evaluating a system Reminder: assignment 4 due in a.
1 Chapter 4. 2 Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational motivation.
CPU Performance Assessment As-Bahiya Abu-Samra *Moore’s Law *Clock Speed *Instruction Execution Rate - MIPS - MFLOPS *SPEC Speed Metric *Amdahl’s.
Using Standard Industry Benchmarks Chapter 7 CSE807.
CMSC 611: Advanced Computer Architecture Benchmarking Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
RISC and CISC. Dec. 2008/Dec. and RISC versus CISC The world of microprocessors and CPUs can be divided into two parts:
Lecture 2: Technology Trends and Performance Evaluation Performance definition, benchmark, summarizing performance, Amdahl’s law, and CPI.
Chapter 3 Memory Management: Virtual Memory
Computer System Architectures Computer System Software
1 Computer Performance: Metrics, Measurement, & Evaluation.
Gary MarsdenSlide 1University of Cape Town Computer Architecture – Introduction Andrew Hutchinson & Gary Marsden (me) ( ) 2005.
Computer Performance Computer Engineering Department.
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
Lecture 2b: Performance Metrics. Performance Metrics Measurable characteristics of a computer system: Count of an event Duration of a time interval Size.
BİL 221 Bilgisayar Yapısı Lab. – 1: Benchmarking.
10/19/2015Erkay Savas1 Performance Computer Architecture – CS401 Erkay Savas Sabanci University.
1 CS/EE 362 Hardware Fundamentals Lecture 9 (Chapter 2: Hennessy and Patterson) Winter Quarter 1998 Chris Myers.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
Chapter 8 CPU and Memory: Design, Implementation, and Enhancement The Architecture of Computer Hardware and Systems Software: An Information Technology.
1 CS465 Performance Revisited (Chapter 1) Be able to compare performance of simple system configurations and understand the performance implications of.
Computer Architecture
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
Computer Organization (1) تنظيم الحاسبات (1)
Data Management for Decision Support Session-4 Prof. Bharat Bhasker.
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
Performance Performance
TEST 1 – Tuesday March 3 Lectures 1 - 8, Ch 1,2 HW Due Feb 24 –1.4.1 p.60 –1.4.4 p.60 –1.4.6 p.60 –1.5.2 p –1.5.4 p.61 –1.5.5 p.61.
September 10 Performance Read 3.1 through 3.4 for Wednesday Only 3 classes before 1 st Exam!
Lec2.1 Computer Architecture Chapter 2 The Role of Performance.
L12 – Performance 1 Comp 411 Computer Performance He said, to speed things up we need to squeeze the clock Study
Performance Analysis Topics Measuring performance of systems Reasoning about performance Amdahl’s law Systems I.
EGRE 426 Computer Organization and Design Chapter 4.
Performance Computer Organization II 1 Computer Science Dept Va Tech January 2009 © McQuain & Ribbens Defining Performance Which airplane has.
CISC. What is it?  CISC - Complex Instruction Set Computer  CISC is a design philosophy that:  1) uses microcode instruction sets  2) uses larger.
Computer Architecture CSE 3322 Web Site crystal.uta.edu/~jpatters/cse3322 Send to Pramod Kumar, with the names and s.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
CpE 442 Introduction to Computer Architecture The Role of Performance
Lecture 2: Performance Evaluation
CS161 – Design and Architecture of Computer Systems
4- Performance Analysis of Parallel Programs
Memory COMPUTER ARCHITECTURE
Execution time Execution Time (processor-related) = IC x CPI x T
Chapter 1: Introduction
CSCE 212 Chapter 4: Assessing and Understanding Performance
Pipelining: Advanced ILP
Performance of computer systems
Chapter 2: Operating-System Structures
Performance of computer systems
Performance of computer systems
Computer Architecture
Execution time Execution Time (processor-related) = IC x CPI x T
Chapter 2: Operating-System Structures
Computer Organization and Design Chapter 4
Presentation transcript:

Chapter 4 M. Keshtgary Spring 91 Type of Workloads

Types of Workloads 2 Test workload – denotes any workload used in performance study Real workload – one observed on a system while being used Cannot be repeated (easily) May not even exist (proposed system) is generally not suitable for use as a test workload Synthetic workload – similar characteristics to real workload Can be applied in a repeated manner Relatively easy to port; Relatively easy to modify without affecting operation No large real-world data files; No sensitive data May have built-in measurement capabilities Benchmark == Workload Benchmarking is process of comparing 2+ systems with workloads

Test Workloads for Computer Systems 3 Addition instructions Instruction mixes Kernels Synthetic programs Application benchmarks

Addition Instructions 4 Early computers had CPU as most expensive component System performance == Processor Performance CPUs supported few operations; the most frequent one was addition Computer with faster addition instruction performed better Run many addition operations as test workload Problem More operations, not only addition Some more complicated than others

Instruction Mixes 5 Number and complexity of instructions increased Additions were no longer sufficient Could measure instructions individually, but they are used in different amounts => Measure relative frequencies of various instructions on real systems Use as weighting factors to get average instruction time Instruction mix – specification of various instructions coupled with their usage frequency Use average instruction time to compare different processors Often use inverse of average instruction time MIPS – Million Instructions Per Second FLOPS – Millions of Floating-Point Operations Per Second Gibson mix: Developed by Jack C. Gibson in 1959 for IBM 704 systems

Example: Gibson Instruction Mix 6 1.Load and Store Fixed-Point Add/Sub6.1 3.Compares3.8 4.Branches Float Add/Sub6.9 6.Float Multiply3.8 7.Float Divide1.5 8.Fixed-Point Multiply0.6 9.Fixed-Point Divide Shifting Logical And/Or Instructions not using regs Indexing18.0 Total , IBM 650 IBM 704

Problems with Instruction Mixes 7 In modern systems, instruction time variable depending upon Addressing modes, cache hit rates, pipelining Interference with other devices during processor-memory access Distribution of zeros in multiplier Times a conditional branch is taken Only represents speed of processor Bottleneck may be in other parts of system

Kernels 8 Pipelining, caching, address translation, … made computer instruction times highly variable Therefore we cannot use individual instructions in isolation Instead, it became more appropriate to consider a set of instructions, which constitutes a higher level function, a service provided by the processors Since most of the initial kernels did not make use of the input/output (I/O) devices and concentrated solely on the processor performance, this class of kernels could be called the processing kernel Kernel = the most frequent function Commonly used kernels: Tree Searching, Matrix Inversion, and Sorting Disadvantages Do not make use of I/O devices

Synthetic Programs 9 Proliferation in computer systems, OS emerged, changes in applications No more processing-only apps, I/O became important too Use simple exerciser loops Make a number of service calls or I/O requests Compute average CPU time and elapsed time for each service call Easy to port, distribute (Fortran, Pascal) First exerciser loop by Buchholz (1969) Called it synthetic program May have built-in measurement capabilities

Synthetic Programs 10 Advantages Quickly developed and given to different vendors No real data files Easily modified and ported to different systems Have built-in measurement capabilities Measurement process is automated Repeated easily on successive versions of the operating systems Disadvantages Too small Do not make representative memory or disk references Mechanisms for page faults and disk cache may not be adequately exercised CPU-I/O overlap may not be representative Not suitable for multi-user environments because loops may create synchronizations, which may result in better or worse performance

Application Workloads 11 For special-purpose systems, may be able to run representative applications as measure of performance E.g.: airline reservation E.g.: banking Make use of entire system (I/O, etc) Issues may be Input parameters Multiuser Only applicable when specific applications are targeted For a particular industry: Debit-Credit for Banks

Benchmarks 12 Benchmark = workload Kernels, synthetic programs, application-level workloads are all called benchmarks Instruction mixes are not called benchrmarks Some authors try to restrict the term benchmark only to a set of programs taken from real workloads Benchmarking is the process of performance comparison of two or more systems by measurements Workloads used in measurements are called benchmarks

13 SPEC Systems Performance Evaluation Cooperative (SPEC) ( Non-profit, founded in 1988, by leading HW and SW vendors Aim: ensure that the marketplace has a fair and useful set of metrics to differentiate candidate systems Product: “fair, impartial and meaningful benchmarks for computers“ Initially, focus on CPUs: SPEC89, SPEC92, SPEC95, SPEC CPU 2000, SPEC CPU 2006 Now, many suites are available Results are published on the SPEC web site

14 SPEC (cont’d) Benchmarks aim to test "real-life" situations E.g., SPECweb2005 tests web server performance by performing various types of parallel HTTP requests E.g., SPEC CPU tests CPU performance by measuring the run time of several programs such as the compiler gcc