industry benchmarks and proof of concepts · spec benchmarks well documented [1] 12 integer...

30
Industry Benchmarks and Proof of Concepts Technical Presentation April 2014

Upload: others

Post on 04-Jun-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

Industry Benchmarks and Proof of Concepts

Technical Presentation

April 2014

Page 2: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 2

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 3: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 3

Overview

CPU and Server benchmarks SPEC www.spec.org

Application specific database benchmarks TPC-C, TPC-E www.tpc.org

TPC-H www.tpc.org

SAP www.sap.com

I/O benchmark tools Iometer www.iometer.org

Vdbench www.oracle.com

Orion www.oracle.com

SPC www.storageperformance.org

Page 4: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 4

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 5: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 5

SPEC Benchmarks

Well documented [1] 12 integer benchmark tests

18 floating point benchmark tests

Programming languages C

C++

Fortran

Pearl

[1] SPEC CPU2006 Benchmark Descriptions; ACM SIGARCH newsletter, Computer Architecture News, Volume 34, No. 4, September 2006.

Page 6: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 6

SPEC Benchmarks

SPEC does not use Oracle data types

Following Oracle data types use hardware arithmetic PLS_INTEGER, SIMPLE_INTEGER

BINARY_FLOAT, BINARY_DOUBLE

SIMPLE_FLOAT, SIMPLE_DOUBLE

Performance of these data types may correlate with SPEC benchmark results

Page 7: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 7

SPEC Benchmarks

Following most used data types in Oracle applications need software library for basic operations and SQL built in functions NUMBER 1)

VARCHAR2, CHAR, NCHAR

DATE, TIMESTAMP

BLOB, CLOB, BFILE

Performance of these data types may not correlate with SPEC benchmark results

1) This very unique numerical data type uses a binary code decimal (BCD) implementation. This data type can not use hardware arithmetic.

Page 8: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 8

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 9: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 9

TPC and SAP Benchmarks

Customer wants to know the key performance metrics of his platform

Huge effort to run TPC on customer platform Complexity

Rules

Impossible to run SAP benchmarks on customer platform Lack of documentation

No benchmark results for YOUR platform

Page 10: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 10

TPC and SAP Benchmarks

A benchmark should be operational on each customer system with any database size

Customers would like to use ALL database features which may be helpful to increase overall efficiency

to get most performance out of each license dollar

Strict TPC rules regarding setup, sizing and usable features

Page 11: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 11

TPC and SAP Benchmarks

For a 10 TByte TPC-H benchmark, vendors use about 3’000 disks

Most customers use by far less disks for a single 10 TByte database

Unrealistic hardware configuration

Page 12: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 12

TPC and SAP Benchmarks

TPC-C and SAP measures the transaction rate at highest system load with > 95% CPU utilization

Every very system administrator wants to avoid this situation in OLTP Systems

Such a high load is an exception in OLTP Systems, not the rule

Only one load profile: complete CPU saturation

Page 13: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 13

TPC and SAP Benchmarks

The TPC performance metric is just one number, e.g. TPC-H: Qph@Size (Query per hour at given database size)

What does it mean?

TPC and SAP do not make any predictions about CPU performance

Server performance

Storage performance

Database performance for data load, data scan, backup, etc.

TPC benchmark metrics do not relate to something that can be readily understood by users

Unpractical performance metrics

Page 14: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 14

TPC and SAP Benchmarks

TPC and SAP provide no real metrics for capacity planning No values about best-case behavior (cached) and worst-case behavior (non cached)

No values about system behavior with increasing load from 1 process to n processes up to system saturation

Unpractical performance metrics

Page 15: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 15

Some quotes:

In short, TPC has become vendor-dominated, and it is time for TPC to reinvent itself to serve its customer community.

At the present time, most TPC’s benchmarks have been politically engineered through vendor negotiation, and therefore lack relevance to any real world problem.

In other words, TPC should become customer-focused and not vendor-focused.

TPC Benchmarks

Keynote from Michel Stonebraker at TPC Technology Conference 2009 [2]

[2] Michel Stonebraker (MIT): A New Direction for TPC? Keynote at TPC Technology Conference 2009, Revised Selected Papers, Lecture Notes in Computer Science LNCS 5895, Springer 2009

Page 16: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 16

SAP does not document storage system configuration for its benchmarks Storage system is not the limiting factor in SAP benchmarks

What is about price of such a storage system?

Benchware opinion Storage system performance is essential for Oracle database environments

Storage system performance should be part of

» platform evaluation

» platform performance calibration

SAP Benchmarks

SAP Sales and Distribution (SD) Benchmark

Page 17: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 17

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 18: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 18

I/O Benchmark Tools

Storage System I/O Performance Useful to test storage system performance at port level

Vendors data sheet numbers

Comparison of I/O Benchmarks

File System Volume Manager

Database System

Storage System

O/S Server

DataG

uard

Ne

two

rk Fu

sion

I/O In

terco

nn

ect

Storage

Netw

ork

Application(s)

Middleware

Fibre Channel Analyzer

Page 19: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 19

I/O Benchmark Tools

Server System I/O Performance Tools like vdbench, Iometer, Orion, etc. just generate I/O

system calls, but no further I/O processing

Useful to analyze transfer performance between storage system and server system

Unable to benchmark storage grids

Unable to benchmark Oracle ASM infrastructure

Comparison of I/O Benchmarks

File System Volume Manager

Database System

Storage System

O/S Server

DataG

uard

Ne

two

rk Fu

sion

I/O In

terco

nn

ect

Storage

Netw

ork

Application(s)

Middleware

Iometer orion vdbench

Page 20: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 20

Database System I/O Performance Most complex I/O operation

Database buffer cache management

» find a free slot

» replace older blocks

» synchronize access to buffer cache

» database block consistency checks

Database I/O needs much more cpu resources than simple I/O generator

» Rule of thumb: 25’000 IOPS per x86 core

» Throughput does not scale linear

dbms_resource_manager.calibrate_io does not recognize hybrid storage systems and delivers wrong results

I/O Benchmark Tools

Comparison of I/O Benchmarks

File System Volume Manager

Database System

Storage System

O/S Server

DataG

uard

Ne

two

rk Fu

sion

I/O In

terco

nn

ect

Storage

Netw

ork

Application(s)

Middleware

Benchware

Page 21: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 21

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 22: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 22

Previous methodology from Ideas International, since 2012 Gartner Inc.

RPE2 is a theoretical performance estimate and not an actual observed measurement of server performance

It is based on published benchmark results and relative performance ratings from server manufacturers

The published or estimated performance points for each server processor option are aggregated by calculating a geometric mean value

The current RPE2 set includes the following six benchmark inputs in its calculation: SAP SD Two-Tier, TPC-C, TPC-H, SPECjbb2005, and two SPEC CPU2006 components

RPE2

[3] Gartner Inc.: Gartner RPE2 Methodology Overview, 2012

Relative Performance Estimate 2 (RPE2)

Page 23: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 23

Because RPE2 is build on industry benchmarks, it inherits all their shortcomings

RPE2

Relative Performance Estimate 2 (RPE2)

Page 24: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 24

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 25: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 25

Proof of Concept

Time Consuming – Complicated – Expensive Installation

Data Migration

Data masking

Simulation of large OLTP user populations

Simulation of SOA and ESB interfaces

Prototype in lab environment

Page 26: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 26

Proof of Concept

Application as load generator Measures performance of current software on new hardware technology

PoC provides a snapshot result - any change of application or data may change PoC result

PoC does not necessarily Identify performance capabilities and limitations of new hardware

Reflect correct price performance ratio of new hardware technology

Prototype in lab environment

Page 27: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 27

Proof of Concept

“My applications and my data are so specific, I must run a proof-of-concept”

Platform components like CPU, storage system, database system or network do not recognize neither any specific application nor any specific data

Customer statement

Page 28: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 28

1 Overview

2 SPEC Benchmarks

3 TPC and SAP Benchmarks

4 I/O Benchmark Tools

5 RPE2

6 Proof of Concept

7 Conclusion

Contents

Page 29: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

copyright © 2014 by benchware.ch slide 29

Conclusion

Current industry benchmarks are inappropriate to calibrate performance of customers Oracle database platform

Proof of Concept with application software May be helpful to become familiar with new technologies

May be helpful for a draft capacity planning of new platforms

Are in general inappropriate to test performance limitations of new technologies and therefore are inappropriate for price performance considerations

Weaknesses of industry benchmarks and proof of concepts

Page 30: Industry Benchmarks and Proof of Concepts · SPEC Benchmarks Well documented [1] 12 integer benchmark tests 18 floating point benchmark tests Programming languages C C++ Fortran Pearl

www.benchware.ch

[email protected]

swiss precision in performance measurement