performance analysis of computer systems · mistakes lars: requirements, metrics, techniques slide...

47
Holger Brunst ([email protected] ) Bert Wesarg ([email protected] ) Center for Information Services and High Performance Computing (ZIH) Performance Analysis of Computer Systems Requirements, Metrics, Techniques, and Mistakes

Upload: others

Post on 04-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Holger Brunst ([email protected])

Bert Wesarg ([email protected])

Center for Information Services and High Performance Computing (ZIH)

Performance Analysis of Computer Systems

Requirements, Metrics, Techniques, and Mistakes

Page 2: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Outline

�   Preliminary remarks

�   Systematic approach

�   Metrics

�   Evaluation techniques

�   Mistakes

Slide 16 LARS: Requirements, Metrics, Techniques

Page 3: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Performance Evaluation

�   Computer development accompanied by measurements and modeling since the 1960s

�   Only a small fraction of the theory is applied in the field

�   Why?

–  Primary duty of developers:

  Create functionally correct systems!

–  Tends to be optional

  Like freestyle event in ice-skating

Slide 17 LARS: Requirements, Metrics, Techniques

Page 4: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Performance

�   Ambiguous term:

–  Well, it’s functioning

–  A short development cycle

–  High throughput

–  Short response times

–  Good reliability

�   Performance is the degree to which a computing system meets expectations of the persons involved in it. Doherty (1970)

�   Performance ... is the effectiveness with which the resources of the host computer system are utilized toward meeting the objectives of the software system. Graham (1973)

�   How well does the system enable me to do what I want?

LARS: Requirements, Metrics, Techniques Slide 18

Page 5: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Decision-Making Process

�   Recognition of need

�   Problem formulation/identification

�   Model building

�   Data collection, model parameterization

�   Model evaluation

–  Analytic

–  Measurement

–  Simulation

�   Model validation and analysis

�   Results interpretation

�   Decision making

LARS: Requirements, Metrics, Techniques Slide 19

Page 6: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Objectives

�   Highest performance for a given cost! –  Comparison of systems –  Tuning of system parameters –  Bottlenecks

–  Workload characterization –  Capacity planning

(right size of hardware and software components)

–  Forecasting (prediction of future systems)

LARS: Requirements, Metrics, Techniques Slide 20

Page 7: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Outline

�   Preliminary remarks

�   Systematic approach

�   Metrics

�   Evaluation techniques

�   Mistakes

Slide 21 LARS: Requirements, Metrics, Techniques

Page 8: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Example 1: Metric, Technique, Workload

�   Task: benchmark the performance of a SAN (disk drives)

�   Metrics?

�   Examples

–  Capacity

–  Price

–  Read/write throughput

–  Seek latency

–  Energy consumption

–  Mean-time to failure

–  Emission of heat and noise

–  Form factor

LARS: Requirements, Metrics, Techniques Slide 22

Page 9: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Example 2: Correctness of Measurements

�   Task: measure the performance of a computer system

�   At least two tools are required:

–  Load generator

–  Performance monitor

�   Which type of monitor would be more suitable (software or hardware) for measuring the following quantities?

–  Number of instructions executed by a processor

–  Degree of multiprogramming on a timesharing system

–  Response time of packets on a network

Slide 23 LARS: Requirements, Metrics, Techniques

Page 10: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Example 3: Experiment Design

�   System performance depends on three factors:

–  Garbage collection: G1, G2, or none

–  Workload:

  Editing

  Computing

  Artificial intelligence

–  CPU: C1, C2, or C3

�   How many experiments are needed?

�   How does one estimate the performance impact of each factor?

Slide 24 LARS: Requirements, Metrics, Techniques

Page 11: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Example 4: Queuing Models

�   Average response time of database: 3 s

�   Idle time during a 1-minute interval: 10 s

�   Queuing model enables determination of:

–  System utilization

–  Average service time per query

–  Number of completed queries

–  Average number of jobs in the system

–  Probability of number of jobs in the system > 10

–  90 percentile response time t

  90% of observations stay below t

  Reminder: percentile P50 is the median

Slide 25 LARS: Requirements, Metrics, Techniques

Page 12: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

The Art of Performance Evaluation

�   Successful evaluation

–  cannot be produced mechanically

–  requires detailed system knowledge

–  careful selection of methodology, workload, and tools

�   Conversion from abstract feeling to a formalized problem

–  to be handled by established tools

�   Analysts tend to have different “styles”

Slide 26 LARS: Requirements, Metrics, Techniques

Page 13: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Systematic Performance Evaluation (1)

However: ten steps 1.  State goals and define system

–  Identical hardware and software: Yet, the system may vary depending on goals –  Chosen system boundaries affect metrics and workloads

–  Administrative control of the sponsors. Keep uncontrollable components out of the system boundaries

2.  List services and outcomes

–  Network: Send packets to a destination –  Processor: Perform a number of instructions

–  Database: Respond to queries –  List outcomes, e.g. of db queries

3.  Select metrics –  Usually speed, accuracy, and availability

  Network: throughput, delay (speed); error rate (accuracy)

  CPU: time to execute instruction sets (speed)

Slide 27 LARS: Requirements, Metrics, Techniques

Page 14: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Systematic Performance Evaluation (2)

4.  List parameters that affect performance

–  System parameters (both hardware and software)

–  Workload parameters (characteristics of users’ requests)

–  The list of parameters may not be complete

–  Parameters may be added, always keep list as comprehensive as possible

5.  Select factors to study

–  Factors: Parameters that are varied during the evaluation

–  Levels: Values of a factor

–  Limited resources è start with a short list and extend if the resources permit

–  Chose parameters expected to have high impact as factors

–  Also consider economic, political, technological constraints, and decision makers

6.  Select technique for evaluation

–  Analytical modeling, simulation, measuring a real system

–  Depends on time, resources, and the desired level of detail

Slide 28 LARS: Requirements, Metrics, Techniques

Page 15: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Systematic Performance Evaluation (3)

7.  Select workload –  List of service requests to the system –  Depends on the evaluation technique: probability of various requests (analytical),

trace of requests from real system (simulation), user scripts (measurement) –  Representative workloads often require to measure and characterize the workload

on existing systems 8.  Design experiments

–  Maximum information with minimum effort –  Two phases:

  First: Many factors, only few levels è determine relative effect of factors

  Second: Few most significant factors, increase the number of levels 9.  Analyze and interpret data

–  Consider the variability of simulation and measurement results. Use statistics! –  Interpretation is the key part of the analyst: Analysis produces results but no

conclusions or decisions –  Analysts’ conclusions may be different given the same set of results

Slide 29 LARS: Requirements, Metrics, Techniques

Page 16: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Systematic Performance Evaluation (4)

10. Present results:

–  Communicate the results to other member of the decision-making team

–  Information needs to be easily understood

  No statistical jargon!

  Chose graphic form with proper scaling of graphs

–  At this point: Reconsider and question some of the decisions made in the previous steps (e.g. system boundaries, factors, or metrics)

–  The complete evaluation project consists of several cycles rather than a single sequential pass

Slide 30 LARS: Requirements, Metrics, Techniques

Page 17: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Outline

�   Preliminary remarks

�   Systematic approach

�   Metrics

�   Evaluation techniques

�   Mistakes

Slide 31 LARS: Requirements, Metrics, Techniques

Page 18: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Performance Metric?, Workload?

�   Metric: Criteria to evaluate the performance

–  Count of how many times an event occurs

–  Duration of a time interval

–  Size of some parameter

–  Derived value from these fundamental measurements

�   Workload: Collection of user requests

–  CPU: Instructions to execute

–  Database: Queries to perform

LARS: Requirements, Metrics, Techniques Slide 32

Page 19: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics

�   Linear

–  Fits with intuition of decision makers

–  If metric increases 2x, performance should increase 2x

–  Non-linear exceptions

  dB scale

  Richter (magnitude) scale

LARS: Requirements, Metrics, Techniques Slide 33

Page 20: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics Contd.

�   Reliable

–  i.e., useful for comparison and prediction

–  If metric A > metric B

  Then, Performance A > Performance B

–  Obvious!?

–  However:

  MIPS(A) > MIPS(B), but

  Execution time (A) > Execution time (B)   Why?

LARS: Requirements, Metrics, Techniques Slide 34

Page 21: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics Contd.

�   Easy to measure

–  Will not be used if complicated

–  Complicated to measure:

  Errors are more likely

–  Wrong results worse than bad metric

LARS: Requirements, Metrics, Techniques Slide 35

Page 22: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics Contd.

�   Repeatable

–  Same value is measured each time an experiment is performed

–  Deterministic

–  Obvious!?

  No, Time-sharing changes measured execution time

LARS: Requirements, Metrics, Techniques Slide 36

Page 23: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics Contd.

�   Consistent

–  Definition is the same across different systems

–  Obvious!?

  No, e.g. MIPS and MFLOPS

–  No comparison if metric is inconsistent

LARS: Requirements, Metrics, Techniques Slide 37

Page 24: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Good Metrics Contd.

�   Independent

–  No outside influences

–  A lot of $ depends on performance results

–  Vendors try to optimize a particular metric

–  Pressure to influence the composition of a metric

LARS: Requirements, Metrics, Techniques Slide 38

Page 25: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Metrics: Clock Rate

–  Faster clock = higher performance (really?)

–  Proportional increase?

–  Architecture differences

  Number of operations per cycle?

  Clocks per instruction (CPI)

–  Factors not considered

  Memory

  I/O

LARS: Requirements, Metrics, Techniques

Linear

Reliable

Repeatable ☺ Easy to measure ☺ Consistent ☺ Independent ☺

Slide 39

Page 26: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Metrics: MIPS

–  Millions instructions per second

–  Rate metric

–  Main problem

  Amount of computation per instruction differs

  RISC, CISC

–  MIPS = Meaningless Indicator of Performance

LARS: Requirements, Metrics, Techniques

Linear

Reliable

Repeatable ☺ Easy to measure ☺ Consistent

Independent ☺

Slide 40

Page 27: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Metrics: FLOPS

–  Floating Point Operations per second

–  Integer program has ZERO flop/s!

–  What is a FLOP?

–  How do we count the FLOP?

LARS: Requirements, Metrics, Techniques

Linear

Reliable

Repeatable ☺ Easy to measure ☺ Consistent

Independent

Slide 41

Page 28: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Metrics: SPEC

–  Standard Performance Evaluation Cooperative (SPEC)

–  Collection of specialized benchmarks/applications

  e.g. CINT2006, CFP2006

–  Uses geometric mean

–  Committee determines collection

–  Vendors are in

–  Specialized compiler optimizations

LARS: Requirements, Metrics, Techniques

Linear

Reliable

Repeatable ☺ Easy to measure ☺ Consistent ☺ Independent

Slide 42

Page 29: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

More Metrics

–  Response time

  Time between request and response

–  Throughput

  Number of work units done per time unit

–  Bandwidth

–  Utilization

–  Mean Time Between Failures (MTBF)

–  Supportable load

–  Speedup

–  Scalability (weak/strong)

LARS: Requirements, Metrics, Techniques Slide 43

Page 30: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Quantitative vs. Qualitative Metrics

�   Quantitative metrics

–  Measure what was done

–  Whether or not it was useful!

  NOP instructions, multiply by zero, …

–  Produces unreliable metrics

�   Qualitative metrics

–  Measures progress towards a goal

–  Only counts what is actually accomplished

LARS: Requirements, Metrics, Techniques Slide 44

Page 31: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Comparison of Common Metrics

LARS: Requirements, Metrics, Techniques Slide 45

Not-so-good metrics Better metrics

Clo

ck r

ate

MIP

S

MFL

OPS

SPE

C

QU

IPS

Exec

utio

n tim

e

Page 32: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Outline

�   Preliminary remarks

�   Systematic approach

�   Metrics

�   Evaluation techniques

�   Mistakes

Slide 46 LARS: Requirements, Metrics, Techniques

Page 33: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Evaluation Techniques: Analytical Modeling

�   Mathematical model

�   Pros (+)

–  Effects and interaction of parameters

–  Possible without system

�   Cons (−)

–  Rarely accurate

–  Simplifying assumptions

LARS: Requirements, Metrics, Techniques Slide 47

Page 34: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Evaluation Techniques: Simulation

�   Simulate the system operation

�   Pros (+)

–  Possible without system

�   Cons (−)

–  Infeasible for full system

–  Incomplete (only parts are simulated)

LARS: Requirements, Metrics, Techniques Slide 48

Page 35: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Evaluation Techniques: Measurement

�   Build the system and measure

�   Pros (+)

–  Most convincing

�   Cons (−)

–  Buy hardware ➜ High cost

–  Isolation of effects

–  Confusion with random changes in environment

LARS: Requirements, Metrics, Techniques Slide 49

Page 36: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Evaluation Techniques: Pros and Cons

Criterion Analytical Modeling Simulation Measurement

Stage Any Any Post-prototype

Time Required Small Medium Varies

Tools Analysts Computer languages Instrumentation

Accuracy Low Moderate Varies

Trade-off evaluation Easy Moderate Difficult

Cost Small Medium High

Saleability Difficult Medium Good

LARS: Requirements, Metrics, Techniques Slide 50

Page 37: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

The Bottom Line

–  Simulation most widely used

–  Combination is recommended

–  Never trust single method

–  Validate with another one, e.g.

  analysis + simulation

  simulation + measurements

LARS: Requirements, Metrics, Techniques Slide 51

Page 38: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Outline

�   Preliminary remarks

�   Systematic approach

�   Metrics

�   Evaluation techniques

�   Mistakes

Slide 52 LARS: Requirements, Metrics, Techniques

Page 39: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes in Performance Analysis

None

Biased

Problem?

Goals

Unsystematic

Incorrect Metrics

Bad Workload

Wrong Technique

Bad Experiments

Methodology

Overlooking Parameters

Ignore Factors

Wrong Level of Detail

Completeness

None

Erronous

Too Complex

No Sensivity

Ignoring Input Errors

Irgnoring Variability

No Outlier Handling

Analysis

Improper Presentation

Ignoring Social Aspects

Omitting Assumptions

Omitting Limitations

Presentation

Performance Analysis Mistakes

Slide 53 LARS: Requirements, Metrics, Techniques

Page 40: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes: Goals?

�   No goals

–  Many efforts started without clear goals

–  Performance model must fit goal

–  First, understand the system and the problem (40%)

–  Then, writing the simulation code

–  Goals often change

�   Biased goals

–  “show that system A is better than system B”

–  Decisions are made towards highlighting a given system

–  Analysts are to be unbiased!

–  Analyst is like a jury member

–  Conclusions depend on results, not on believes

Slide 54 LARS: Requirements, Metrics, Techniques

Page 41: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes: Methodology

�   Unsystematic approach

–  Arbitrary selection of parameters, metrics, and workloads

�   Incorrect performance metrics

–  Example 1: Comparison of MIPS for different architectures

–  Example 2: Computer advertisement “datasheets” for GHz, GB, Core number, and Megapixel fans

�   Unrepresentative workload

–  Reflect usage of the system in practice

–  Example: Packet sizes in a network

�   Wrong evaluation technique

–  Analysts “married” with one technique

–  Model optimized for the analyst but not the problem

–  Basic knowledge of all techniques (3)

Slide 55 LARS: Requirements, Metrics, Techniques

Page 42: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes: Completeness and Balance

�   Overlooking important parameters –  List system and workload characteristics that affect performance –  System: quantum (CPU) and working set (memory) size –  Workload: number of users, request patterns, priorities

�   Inappropriate level of detail –  Very different alternatives: Use high-level model –  Slight variations: Use more detailed model –  Do not take a detailed approach when a high-level model will do and

vice versa �   Ignoring significant factors

–  Varied parameters are called factors –  Usually, not all parameters are factors. –  Identify the ones that significantly alter performance if varied e.g.

response time: packet size vs. arrival rate –  Favor factors that are directly controlled by the user –  The choice of factors should be based on relevance, not on their

knowledge

Slide 56 LARS: Requirements, Metrics, Techniques

Page 43: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes: Analysis �   No analysis

–  Analysts are good at collecting enormous amounts of data but often cannot analyze the data and write understandable summaries

–  Result: No useful analysis at all or a thick report with many graphs but no interpretation

–  Teamwork can help

�   Erroneous analysis

–  Let’s average ratios! Short simulation runs or so much more convenient!

�   No sensitivity analysis (German: Empfindlichkeitsanalyse)

–  Do not present your results as facts but as evidence

–  Performance results may be sensitive to workload and system parameters

�   Ignoring errors in input

–  Parameters of interest cannot be measured. Example: Network device

�   Improper treatment of outliers: Measurement error vs. system phenomenon

�   Analysis too complex: Published models are often too complex for the real world

�   Ignoring variability: Common to analyze only the mean performance. Example: Daily averages of computer demands which ignore the large hourly peaks.

Slide 57 LARS: Requirements, Metrics, Techniques

Page 44: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Common Mistakes: Presentation

�   Improper presentation of results

–  Help decision making

–  “The right metric to measure the performance of an analyst is not the number of analyses performed but the number of analyses that helped the decision makers.”

�   Ignoring social aspects

–  Presentation requires social and substantive skills!

–  Analysts typically have good substantive skills…

–  Trust between analyst and decision makers

–  Conflict of interest: Innovativeness of the modeling approach (analyst) vs. quickly getting to the final results (decision maker)

�   Omitting assumptions and limitations

–  Users will try to reproduce your results under their assumptions which is likely to reveal different results

Slide 58 LARS: Requirements, Metrics, Techniques

Page 45: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Checklist for Avoiding Mistakes I

�   Is the system correctly defined and the goals clearly stated?

�   Are the goals stated in an unbiased manner?

�   Have all the steps of the analysis followed systematically?

�   Is the problem clearly understood before analyzing it?

�   Are the performance metrics relevant for this problem?

�   Is the workload correct for this problem?

�   Is the evaluation technique appropriate?

�   Is the list of parameters that affect performance complete?

�   Have all parameters that affect performance been chosen as factors to be varied?

�   Is the experimental design efficient in terms of time and results?

�   Is the level of detail proper?

�   Is the measured data presented with analysis and interpretation?

Slide 59 LARS: Requirements, Metrics, Techniques

Page 46: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Checklist for Avoiding Mistakes II

�   Is the analysis statistically correct?

�   Has the sensitivity analysis been done?

�   Would errors in the input cause an insignificant change in the results?

�   Have the outliers in the input or output been treated properly

�   Have the future changes in the system and workload been modeled?

�   Has the variance of input been taken into account?

�   Has the variance of the results been analyzed?

�   Is the analysis easy to explain?

�   Is the presentation style suitable for its audience?

�   Have the results been presented graphically as much as possible?

�   Are the assumptions and limitations of the analysis clearly documented?

Slide 60 LARS: Requirements, Metrics, Techniques

Page 47: Performance Analysis of Computer Systems · Mistakes LARS: Requirements, Metrics, Techniques Slide 16 . Performance Evaluation Computer development accompanied by measurements and

Short Example: Bandwidth to Filesystems

�   State goals and define the system –  read and write with 8 GB/s. –  move 25 TB in less than 4h

�   List services and outcomes –  File system

�   Select metrics –  Bandwidth in GB/s

�   List parameters –  Block size, Number of clients,

Total data written, type of I/O (buffered, direct)

�   Select factors to study

�   Select evaluation technique –  Measurement

�   Select workload –  7/8 of memory, 25 TB of data

�   Design experiments �   Analyze and interpret data

�   Present results

HPC - SAN

Capacity:

> 50 TB

HPC - Server

Main memory : ≥ 4 TB

8 GB / s

PC - SAN

Capacity: > 50 TB

4 GB / s

- PC Farm

4 GB / s

PetaByte Tape Silo

Capacity: ≥ 1 PB

1 , 8 GB / s

Slide 61 LARS: Requirements, Metrics, Techniques