HP c-Class Performance Tuning manual Contents

Page 3

Contents

 

Introduction

5

About the Performance and Tuning Guide

5

System performance

6

Verifying Linux system performance

6

Running fio tests

6

Write bandwidth test

7

Verifying Windows system performance with Iometer

9

Debugging performance issues

10

Improperly configured benchmark

10

Oversubscribed bus

10

Handling PCIe errors

11

PCIe link width improperly negotiated

12

CPU thermal throttling or auto-idling

13

Benchmarking through a filesystem

14

Slow performance using RAID5 on Linux

14

Using CP and other system utilities

14

ext4 in Kernel.org 2.6.33 or earlier might silently corrupt data when discard (trim) is enabled

14

General tuning techniques

16

Using direct I/O, unbuffered, or zero copy 10

16

Multiple outstanding IOs

16

Pre-conditioning

17

Increasing outstanding requests allowed by the kernel (Linux only)

18

Pre-allocating memory

18

preallocate_memory

18

preallocate_mb

19

expected_io_size

19

Tuning techniques for writes

20

Increased steady-state write performance with fio-format

20

Linux filesystem tuning

21

ext2-3-4 tuning

21

Setting stride size and stripe width for ext2/3 (extN) when using RAID

21

Using the IO Accelerator as swap space

22

fio benchmark

23

Compiling the fio benchmark

23

Verifying IO Accelerator performance on Windows operating systems

24

Using Iometer to verify IO Accelerator performance on Windows operating systems

24

Programming using direct I/O

25

Using direct I/O on Linux

25

Using direct I/O on Windows

26

C++ code sample

26

Windows driver affinity

29

Contents

3

Image 3
Contents HP IO Accelerator Performance Tuning Guide Page Contents Setting Windows driver affinity Introduction About the Performance and Tuning GuideVerifying Linux system performance System performanceWrite bandwidth test System performance Verifying Windows system performance with Iometer Debugging performance issues Improperly configured benchmarkOversubscribed bus Handling PCIe errors PCIe link width improperly negotiated CPU thermal throttling or auto-idling Slow performance using RAID5 on Linux Using CP and other system utilitiesBenchmarking through a filesystem To avoid this issue. For more information, see the patch General tuning techniques Using direct I/O, unbuffered, or zero copyMultiple outstanding IOs $ dd if=/dev/zero of=/dev/fioX bs=10M oflag=direct Pre-conditioning$ echo 4096 /sys/block/fio name/queue/nrrequests Pre-allocating memoryPreallocatemb Increased steady-state write performance with fio-format Tuning techniques for writesStripewidth = dbd * stride Linux filesystem tuningExt2-3-4 tuning Stride = chunk size / filesystem block sizeOptions iomemory-vsl preallocatememory=1072,4997,6710,10345 Using the IO Accelerator as swap spaceFio benchmark Compiling the fio benchmark$ tar xjvf fio-X.Y.Z.tar.bz2 $ cd fio-X.Y.Z Page Fd = openfilename, Owronly Odirect Programming using direct I/OUsing direct I/O on Linux Fd = openfilename, OwronlyUsing direct I/O on Windows ++ code sample Programming using direct I/O Programming using direct I/O Windows driver affinity Setting Windows driver affinityCreate the SetWorkerAffinity2 tag of type Regdword Acronyms and abbreviations Index Index