the zec12 racehorse – a linux performance · pdf file© 2013 ibm corporation ibm lab...

40
© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse – a Linux Performance Update Mario Held, System Performance Analyst IBM Germany Lab Boeblingen June 19 - 20, 2013

Upload: vuduong

Post on 14-Mar-2018

227 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation

IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation

The zEC12 Racehorse – a Linux Performance Update

Mario Held, System Performance AnalystIBM Germany Lab Boeblingen

June 19 - 20, 2013

Page 2: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation2 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Trademarks

IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Java is a registered trademarks of Oracle and/or its affiliates.

Other product and service names might be trademarks of IBM or other companies.

Page 3: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation3 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Agenda

zEnterprise EC12 design Linux performance comparison zEC12 and z196

Page 4: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation4 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

zEC12 Continues the Mainframe Heritage

0

1000

2000

3000

4000

5000

1997G4

1998G5

1999G6

2000z900

2003z990

2005z9 EC

2008z10 EC

2010z196

300MHz

420 MHz

550 MHz

770 MHz

1.2 GHz

1.7 GHz

4.4 GHz

5.2 GHz

MH

z

2012zEC12

5.5 GHz

6000

Page 5: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation5 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

The Evolution of Mainframe Generations

zEC12zEC12

Page 6: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation6 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

CPU (core)– Cycle time– Pipeline, execution order– Branch prediction– Hardware versus millicode

Memory subsystem– High speed buffers (caches)– On chip, on book– Private, shared– Coherency required

Buses– Bandwidth

Design Limited by distance, speed of light, and available space

Generic Hierarchy example

Memory

Shared Cache

Private Cache

CPU

Private Cache

CPU

Private Cache

CPU…

Processor Design Basics

Page 7: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation7 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

zEC12 versus z196 – Memory and Caches

Memory

L4 Cache

L3 Cache L3 Cache…L2

CPU 1

L2

CPU 4

L1 L1

L2

CPU 1

L2

CPU 4

L1 L1……

CPU 1 CPU 6 CPU 1 CPU 6

Memory

L4 Cache

L3 Cache L3 Cache…

L2 L2 L2 L2

L1+ …… L1L1L1

L1+ L1+L1+

L1

z196– Caches

• L1 private 64k instr, 128k data• L2 private 1.5 MiB• L3 shared 24 MiB per chip• L4 shared 192 MiB per book

zEC12– Caches

• L1 private 64k instr, 96k data• L1+ 1 MiB (acts as second level data

cache)• L2 private 1 MiB (acts as second

instruction cache)• L3 shared 48 MiB per chip• L4 shared 2 x 192 MiB => 384 MiB

per book

Page 8: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation8 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

zEC12 PU Core

Each core is a super-scalar processor with these characteristics:

– Six execution units• 2 fixed point (integer), 2 load/store, 1 binary

floating point, 1 decimal floating point

– Up to three instructions decoded / completed per cycle

– Up to seven instructions issued per cycle – New instructions– Better branch prediction

• Virtual branch unit and queue

– Enhanced out-of-(program)-order (OOO+) capabilities

• More out of order groups

Page 9: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation9 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

zEC12 Out of Order – significant performance benefit Re-ordering instruction execution

– Instructions stall in a pipeline because they are waiting for results from a previous instruction or the execution resource they require is busy

– In an in-order core, this stalled instruction stalls all later instructions in the code stream

– In an out-of-order core, later instructions are allowed to execute ahead of the stalled instruction

Re-ordering storage accesses– Instructions which access storage can stall because they are waiting on results

needed to compute storage address – In an in-order core, later instructions are stalled– In an out-of-order core, later storage-accessing instructions which can compute

their storage address are allowed to execute Hiding storage access latency

– Many instructions access data from storage – Storage accesses can miss the L1 and require 10 to 500 additional cycles to

retrieve the storage data– In an in-order core, later instructions in the code stream are stalled– In an out-of-order core, later instructions which are not dependent on this storage

data are allowed to execute

Page 10: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation10 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Out of Order Execution – z196 versus zEC12

L1 miss

Instrs

1

2

3

4

5

6

7

Time

In-order core execution

L1 miss

Time

z196 Out-of-order core execution

L1 miss

zEC12 Out-of-order core execution

Time

Improvedoverlapping

opportunitiesExecution

Storage access

Dependency

Page 11: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation11 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Set the expectations

Performance relevant changes in these areas– Increased clock speed (5.2 GHz to 5.5GHz)– Changes in cache

• Level 1 data cache smaller (128 k → 96k)• Level 1+ and Level 2 cache bigger (1.5 MiB → 2MiB)• Level 3 and Level 4 now of double size

– Modern processor with • Improved Pipelining and Decoding• Better branch prediction• Out of Order of the second generation

The expectation was to see 25 percent performance improvement overall

Page 12: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation12 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Agenda

zEnterprise EC12 design Linux performance comparison zEC12 and z196

Page 13: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation13 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

zEC12 versus z196 Comparison Environment

Hardware– zEC12

• 2827-789 H89• OSA Express 4S 10 GiB and 1 GiB • Connected to a DS8870 via FICON Express 8S

– z196• 2817-766 M66• OSA Express 4S 10 Gib and 1 Gib• Connected to a DS8800 via FICON Express 8S

Recent Linux distribution with kernel– SLES11 SP2: 3.0.13-0.27-default (if not stated otherwise)– Shared processors (if not stated otherwise)– Linux in LPAR exclusively measured

• Other LPARs deactivated

Source: If applicable, describe source origin

Page 14: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation14 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

File Server Benchmark Description

Dbench 3– Emulation of Netbench benchmark– Generates file system load on the Linux VFS– Does the same I/O calls like the smbd server in Samba (without

networking calls)– Mixed file operations workload for each process: create, write, read,

append, delete– Measures throughput of transferred data

Configuration– 2 GiB memory, mainly memory operations– Scaling processors 1, 2, 4, 8, 16– For each processor configuration scaling

processes 1, 4, 8, 12, 16, 20, 26, 32, 40

Page 15: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation15 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Dbench3

Throughput improves by 38 to 68 percent in this scaling experiment, comparing zEC12 to z196

1 4 8 12 16 20 26 32 40

Dbench Throughput

1 CPU z196

2 CPUs z196

4 CPUs z196

8 CPUs z196

16 CPUs z196

1 CPUs zEC12

2 CPUs zEC12

4 CPUs zEC12

8 CPUs zEC12

16 CPUs zEC12

Number of processes

Page 16: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation16 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Kernel Benchmark Description

Lmbench 3– Suite of operating system micro-benchmarks– Focuses on interactions between the operating system and the hardware

architecture– Latency measurements for process handling and communication– Latency measurements for basic system calls– Bandwidth measurements for memory and file access, operations and

movement Configuration

– 2 GB memory– 4 processors

Page 17: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation17 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Lmbench3

Benefits seen in the very most operations

Measured operation Deviation zEC12 to z196 in %simple syscall 52simple read/write 46 /43select of file descriptors 32signal handler 55process fork 25libc bcopy aligned L1 / L2 / L3 / L4 cache / main memory 0 / 12 / 25 / 10 / n/a libc bcopy unaligned L1 / L2 / L3 / L4 cache / main memory 0 / 26 / 25 / 35 / n/amemory bzero L1 / L2 / L3 / L4 cache / main memory 40 / 13 / 20 / 45 / n/amemory partial read L1 / L2 / L3 / L4 cache / main memory -10 / 25 / 45 / 105 / n/amemory partial read/write L1 / L2 / L3 / L4 cache / main memory 75 / 75 / 90 / 180 / n/amemory partial write L1 / L2 / L3 / L4 cache / main memory 45 / 50 / 62 / 165 / n/amemory read L1 / L2 / L3 / L4 cache / main memory 5 / 10 / 45 / 120 / n/amemory write L1 / L2 / L3 / L4 cache / main memory 80 / 92 / 120 / 250 / n/aMmap read L1 / L2 / L3 / L4 cache / main memory 0 / 13 / 35 / 110 / n/aMmap read open2close L1 / L2 / L3 / L4 cache / main memory 23 / 18 / 19 / 55 / n/aRead L1 / L2 / L3 / L4 cache / main memory 60 / 30 / 35 / 50 / n/aRead open2close L1 / L2 / L3 / L4 cache / main memory 27 / 30 / 35 / 60 / n/aUnrolled bcopy unaligned L1 / L2 / L3 / L4 cache / main memory 35 / 28 / 60 / 35 / n/a

35 / 13 / 45 / 20 / n/amappings 34-41

Unrolled partial bcopy unaligned L1 / L2 / L3 / L4 cache / main memory

Page 18: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation18 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Java Benchmark Description

Industry standard benchmark– Evaluates the performance of server side Java– Exercises

• Java Virtual Machine (JVM)• Just-In-Time compiler (JIT)• Garbage collection• Multiple threads• Simulates real-world applications including XML processing or floating point

operations

– Can be used to measure performance of processors, memory hierarchy and scalability

Configurations– 16 processors, 4 GiB memory, 1 JVM, 2GiB max heap size– IBM J9 JRE 1.7.0 SR4 64-bit

Page 19: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation19 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Java Benchmark

Business operation throughput improved by approximately 30% to 35%

12

34

56

78

910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

3132

Java benchmark throughput

z196 SLES11-SP2-GMC 16_CPU 1JVM JRE-1.7 SR4

zEC12 SLES11-SP2-GMC 16_CPU 1JVM JRE-1.7 SR4

Number of Warehouses

Th

rou

gh

pu

t

12

34

56

78

910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

3132

0

5

10

15

20

25

30

35

40

Relative performance in %

BASE z196 SLES11-SP2-GMC 16_CPU 1JVM JRE-1.7 SR4

zEC12 SLES11-SP2-GMC 16_CPU 1JVM JRE-1.7 SR4

Number of Warehouses

Rel

ativ

e p

erf o

rman

ce i

n %

Page 20: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation20 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Compute-Intense Benchmark Description Industry standard benchmark

– Stressing a system's processor, memory subsystem and compiler– Workloads developed from real user applications– Exercising integer and floating point in C, C++, and Fortran programs– Can be used to evaluate compile options– Can be used to optimize the compiler's code generation for a given target

system Configuration

– 1 processor, 2 GiB memory, executing one test case at a time

Page 21: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation21 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Single-threaded, compute-intense Workload

SLES11 SP2 GA, gcc-4.3-62.198, glibc-2.11.3-17.31.1 using default machine optimization options as in gcc-4.3 s390x

Integer suite 28% more throughput (geometric mean) Floating point suite 31% more throughput (geometric mean), not shown

in a chart

testcase 1

testcase 2

testcase 3

testcase 4

testcase 5

testcase 6

testcase 7

testcase 8

testcase 9

testcase 10

testcase 11

testcase 12

0 5 10 15 20 25 30 35 40 45

Integer zEC12 versus z196 (march=z9-109 mtune=z10)

improvements [%]

Page 22: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation22 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Description Network Benchmark uperf

Open Source (GPL) network performance tool that supports modeling Transactional Workloads

– rr1c 1 x 1 Simulating low latency keep-alives– rr1c 200 x 1000 Simulating online transactions– rr1c 200 x 30k Simulating database query

Streaming workloads– str read Simulating incoming file transfers– str write Simulating outgoing file transfers

All tests are done with 1, 10, 50, and 250 simultaneous connections All that across on multiple connection types

– LPAR-LPAR / LPAR-z/VM / z/VM-z/VM– Physical and virtual connections– Different OSA cards and MTU sizes

Page 23: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation23 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

uperf – OSA Express4S 10GiB MTU1492rr

1c-1

x1--

-1

rr1c

-1x1

--10

rr1c

-1x1

--50

rr1c

-1x1

-250

rr1c

-200

x100

0---

1

rr1c

-200

x100

0--1

0

rr1c

-200

x100

0--5

0

rr1c

-200

x100

0-25

0

rr1c

-200

x30k

---1

rr1c

-200

x30k

--10

rr1c

-200

x30k

--50

rr1c

-200

x30k

-250

str-

read

x30k

- --1

str-

read

x30k

- -10

str-

read

x30k

- -50

str-

read

x30k

- 250

str-

wri

tex3

0k--

-1

str-

wri

tex3

0k--

10

str-

wri

tex3

0k--

50

str-

wri

tex3

0k-2

50

0

10

20

30

40

50

60

Deviation App-Throughput in %

Base: z196, OE4s-10Gb-cable-1492

zEC12 ,OE4s-10Gb-cable-1492

Workload

Re

lati

ve

pe

rfo

rma

nc

e in

%

Throughput increased– Especially with streaming and many parallel connections

Measured with a SLES-SP2 maintenance kernel (lanidle settings)

Page 24: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation24 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

uperf – OSA Express4S 10GiB MTU1492 (cont.) Tremendous processor consumption savings

– Benefit for all kinds of connection characteristicsrr

1c-1

x1--

-1

rr1c

-1x1

--10

rr1c

-1x1

--50

rr1c

-1x1

-250

rr1c

-200

x100

0---

1

rr1c

-200

x100

0--1

0

rr1c

-200

x100

0--5

0

rr1c

-200

x100

0-25

0

rr1c

-200

x30k

---1

rr1c

-200

x30k

--10

rr1c

-200

x30k

--50

rr1c

-200

x30k

-250

str-

read

x30k

- --1

str-

read

x30k

- -10

str-

read

x30k

- -50

str-

read

x30k

- 250

str-

wri

tex3

0k--

-1

str-

wri

tex3

0k--

10

str-

wri

tex3

0k--

50

str-

wri

tex3

0k-2

50-60

-50

-40

-30

-20

-10

0

Processor Consumption Savings

Base: z196 , OE4s-10Gb-cable-1492

zEC12, OE4s-10Gb-cable-1492

Workload

Pro

ce

ss

or

co

ns

um

pti

on

de

via

t io

n in

% (

l ow

er

is b

ett

er)

Page 25: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation25 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

uperf – Hipersockets LPAR-LPAR MTU32k

Throughput increased– Improvement with all types of connection and sizes measured

Processor time savings similar as seen with OSA card Dedicated processors used in this measurement Measured with a SLES11-SP2 maintenance kernel

rr1c

-1x1

---1

rr1c

-1x1

--10

rr1c

-1x1

--50

rr1c

-1x1

-250

rr1c

-200

x100

0---

1rr

1c-2

00x1

000-

-10

rr1c

-200

x100

0--5

0rr

1c-2

00x1

000-

250

rr1c

-200

x30k

---1

rr1c

-200

x30k

--10

rr1c

-200

x30k

--50

rr1c

-200

x30k

-250

str-

read

x30k

- --1

str-

read

x30k

- -10

str-

read

x30k

- -50

str-

read

x30k

- 250

str-

wri

tex3

0k--

-1st

r-w

rite

x30k

--10

str-

wri

tex3

0k--

50st

r-w

rite

x30k

-250

0

10

20

30

40

50

60

70

80Deviation App-Throughput in %

Base z196 HS32k-HS32k-virtual-32k LPAR-LPAR

zEC12 HS32k-HS32k-virtual-32k LPAR-LPAR

Rel

ativ

e p

erf o

rman

ce i

n %

Page 26: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation26 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Description – Scalability Benchmark Re-Aim 7

– Open Source equivalent to the AIM Multiuser benchmark– Workload patterns describe system call ratios (patterns can be more

inter-process-communication, disk or calculation intensive)– The benchmark run

• Starts with one job, continuously increases that number• Overall throughput usually increases until #threads ≈ #processors• Then threads are further increased until a drop in throughput occurs• Scales up to thousands of concurrent threads stressing the same components

– Often a good check for non-scaling interfaces• Some interfaces don't scale at all (1 job throughput ≈ multiple jobs throughput,

despite >1 processors)• Some interfaces only scale in certain ranges (throughput suddenly drops earlier)

– Measures the amount of jobs per minute a single thread and all the threads can achieve

– Configuration• 2, 8, 16 processors, 4 GiB memory• Using a journaled file system on an xpram device (not be I/O bound)

Page 27: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation27 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Re-Aim fserver Workload Pattern

Higher throughput with 4, 8, and 16 processors (25 % to 50 %) at 30 % lower processor consumption

12

34

56

78

910

1216

2024

3240

4865

7287

119 13

215

9 193

244 30

236

0 487

540 65

176

2 1106

1325 18

0320

04 2426

2732 28

4832

48 3766

4374 48

48

Reaim fserver profile - 16 processors

z196zEC12

Number of processes

Th

rou

gh

pu

t in

job

s p

er

min

ute

Page 28: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation28 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Re-Aim New-DB Workload Pattern

Higher throughput with 4, 8, and 16 processors (42% to 66 %) at 35 % lower processor consumption

12

34

56

78

910

1215

2123

2427

2937

4551

6169

8290

9710

612

2 139

163 19

021

5 224

258 28

333

0 384

402 42

647

4 514

602 63

069

7 792

838 87

497

9 1046

1282 14

2415

84 1688

1922 19

6322

60 2558

2994 31

5333

08 3969

Reaim new-db profile - 16 processors

z196

zEC12

Number of processes

Th

rou

gh

pu

t in

Jo

bs

pe

r m

inu

te

Page 29: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation29 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Re-Aim Compute Workload Pattern

Higher throughput with 4, 8, and 16 processors (25% to 45%) at 20% to 30% percent lower processor consumption

12

34

56

78

910

1112

1316

1724

2527

3341

5163

6675

8710

111

2 117

135 15

820

7 228

231 27

932

7 368

408 43

147

5 492

567 57

675

8 836

853 10

0010

32 1211

1360 15

1218

32

Reaim Compute profile - 16processors

z196zEC12

Number of processes

Th

rou

gh

pu

t in

Jo

bs

pe

r m

inu

te

Page 30: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation30 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Benchmark Description – DB2 Database BI Workload

DB2 Query collection (IBM internal)– Ten complex database warehouse queries

• Measured high hit / warm state

– Provided by the IBM DB2 development (IBM Toronto lab)

Configuration– 16 processors– 128 GiB of main memory– DB2 10.1 for Linux on System z– Not I/O constraint

Page 31: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation31 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

DB2 Database Complex BI Queries

30 percent more throughput comparing zEC12 versus z196 Close to factor two comparing zEC12 versus z10

Testcase0

5

10

15

20

25

DB2 BI Queries

Overall run time (lower is better)

z10

z196

zEC12

Tim

e in

sec

Page 32: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation32 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Benchmark Description – SysBench

Scalability benchmark SysBench– SysBench is a multi-threaded benchmark tool (among others) for oltp

database loads– Can be run read-only and read-write– Clients can connect locally or via network to the database– Database level and tuning is important

• We use Postgres 9.2.2 with configuration tuned for this workload in our test

– High/Low Hit cases resemble different real world setup cases with high or low cache hit ratios

Page 33: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation33 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Benchmark description – SysBench (cont.)

Configuration– Scaling – read-only load with 2, 8, 16 processors, 8 GiB memory, 4GiB DB

(High-Hit)– Scaling Net – read-only load with 2, 8, 16 processors, 8 GiB memory, 4GiB

DB (High-Hit)– Scaling FICON / FCP High Hit ratio – read-write load with 8 processors, 8

GiB memory, 4GiB DB• RW loads still need to maintain the transaction log, so I/O is still important despite

DB<MEM

– Scaling FICON / FCP Low Hit ratio – read-write load with 8 processors, 4 GiB memory, 64GiB DB

• This is also I/O bound to get the data into cache

– All setups use• HyperPAV (FICON) / Mulitpathing (FCP)• Disk-spread over the Storage Server as recommended + Storage Pool Striping• Extra Set of disks for the WAL (Transaction Protocol)

Page 34: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation34 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

SysBench – OLTP Read-Write Low-Hit SCSI Test

Overall throughput increased by 35% after ramp-up About 35% less processor consumption Much lower latencies

8 16 32 48 64 128 2560

5

10

15

20

25

30

35

40

Relative throughput

z196 OLTPP-ReadWritee-LowHit_scsi

zEC12 OLTPP-ReadWrite-LowHit_scsi

Number Of Threads

Re

lati

ve

pe

rfo

rma

nc

e in

%

8 16 32 48 64 128 2560

5

10

15

20

25

30

35

40

Processor consumption savings per transaction

z196 OLTP-ReadWritee-LowHit_scsi

zEC12 OLTPP-ReadWrite-LowHit_scsi

Number Of Threads

Re

lati

ve

pe

rfo

rma

nc

e in

%

Page 35: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation35 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Benchmark Description – Disk I/O

Flexible I/O Testing Tool (FIO)– Benchmarking and hardware verification / stress I/O devices– Open Source (GPLv2)– Easy to customize to individual needs

• Provides information regarding throughput, latencies, system utilization and much more

Configuration– 8 processors– 512 MB main memory– z196 connected to DS8800 / zEC12 connected to a DS8870– FICON Express 8s– 64 single disks, each in FICON and SCSI

Page 36: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation36 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

FIO – Throughput Random Read DIO ASYNC

z196 connected to DS8800, zEC12 connected to DS8870, so we expect increased throughput from newer hardware

– Bigger caches– Faster disks

Throughput charts intended to show that the same amount of data or even more is transferred during a period of time

1 2 4 8 16 32 64

Random Read Throughput FICON

z196 single disks Base hpav DIO ASYNCIO 8 FICON

zEC12 single disks Base hpav DIO ASYNCIO 8 FICON

Number of Jobs

Th

rou

gh

pu

t

1 2 4 8 16 32 64

Random Read Throughput SCSI

z196 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

zEC12 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

Number of Jobs

Th

rou

gh

pu

t

Page 37: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation37 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

FIO – Processor Consumption Random Read DIO - ASYNC

zEC12 needs much less processor time to read the same amount of data using random access pattern

– Savings in the FICON measurement 24% to 28%– Savings in the SCSI measurement 29% to 34%

1 2 4 8 16 32 64

Total processor consumption per MB FICON

z196 single disks Base hpav DIO ASYNCIO 8 FICON

zEC12 single disks Base hpav DIO ASYNCIO 8 FICON

Number of Jobs

Pro

cess

or

tim

e p

er M

B (

l ow

er i

s b

ette

r)

1 2 4 8 16 32 64

Total processor consumption per MB SCSI

z196 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

zEC12 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

Number of Jobs

Pro

cess

or

tim

e p

er M

B (

l ow

er i

s b

ette

r)

Page 38: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation38 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

FIO – Processor Consumption Random Write DIO - ASYNC

zEC12 needs much less processor time to write the same amount of data using random access pattern

– Savings in the FICON measurement 24% to 29% – Savings in the SCSI measurement 28% to 31%

1 2 4 8 16 32 64

Total processor consumption per MB FICON

z196 single disks Base hpav DIO ASYNCIO 8 FICON

zEC12 single disks Base hpav DIO ASYNCIO 8 FICON

Number of Jobs

Pro

cess

or

tim

e p

er M

B (

low

er i

s b

ett e

r)

1 2 4 8 16 32 64

Total processor consumption per MB SCSI

z196 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

zEC12 multipath multibus lvm Base DIO ASYNCIO 8 SCSI

Number of Jobs

Pro

cess

or

tim

e p

er M

B (

low

er i

s b

ett e

r)

Page 39: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation39 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Summary

Tremendous performance gains– Performance improvement seen in almost to all areas measured– Often combined with processor consumption reduction– More improvement than was to be expected just from higher rate

• Rate is up from 5.2 GHz to 5.5 GHz which means close to 6 percent higher

– New cache setup with much bigger caches– Out-of-order execution of the second generation – Better branch prediction

Some exemplary performance gains with Linux workloads– About 30 and up to 35 percent for Java – Up to 30 percent for complex database– Up to 31 percent for single threaded CPU intense– About 38 to 68 percent more throughput when scaling processors

and / or processes– Processor consumption much lower for disk I/O per transferred unit– Increased throughput at lower processor consumption with network

Page 40: The zEC12 Racehorse – a Linux Performance · PDF file© 2013 IBM Corporation IBM Lab Boeblingen, Dept. 3252, Linux on System z System & Performance Evaluation The zEC12 Racehorse

© 2013 IBM Corporation40 The zEC12 Racehorse – a Linux Performance Update

Linux on System z Performance Evaluation

Questions ?

Further information is located at– Linux on System z – Tuning hints and tips

http://www.ibm.com/developerworks/linux/linux390/perf/index.html

– Live Virtual Classes for z/VM and Linuxhttp://www.vm.ibm.com/education/lvc/

IBM Deutschland Research& Development Schoenaicher Strasse 22071032 Boeblingen, Germany

Phone +49 (0)7031–16–4257Email [email protected]

Mario Held

Linux on System z System SoftwarePerformance Engineer