Use Bonnie ++ To Test System IO SPEED

xiaoxiao2021-03-06  51

Original link:

http://www.eygle.com/unix/Use.bonnie .to.test.io.speed.htm

Since Bonnie has some well-known issues, such as> 2G file support. Russell Coker (Russell@coker.com.au) developed a new code to support> 2G files, etc. Get Tim Bray (TBRAY @ Textuality After .com), Russell named Bonnie , released online, and started to be popular.

The current version has been updated to 1.03a, you can download: http://www.coker.com.au/bonnie / You can also click here to download, this version needs to be compiled, if you don't have a compilation environment, you can click Download my compilation here for the Sun Solaris environment (Solaris8 test passed)

The personal home page of Russell Coker is: http://www.coker.com.au/

The difference between Bonnie and Bonnie is: http://www.coker.com.au/bonnie /diff.html

I briefly introduce Bonnie compilation and use:

Compilation

You need to use the source code described above to use, if you don't have a compilation environment, you can click here to download my compilation, apply to the Sun Solaris environment (Solaris8 test passed)

Of course, you need to install make, and GCC and other necessary compilers. During the compilation process, if you encounter the following error, you may be because you don't set the correct environment variable

$ ./Configuregrep: illegal option - qUsage: grep -hblcnsviw pattern file .grep: illegal option - qUsage:.... Grep -hblcnsviw pattern file .checking for g ... g checking for C compiler default output ... a.outchecking Wors ... configure: Error: Cannot Run C Compiled program.if You Meant To Cross Compile, USE `- Host'.see` config.log 'for more details.

Continue to compile after setting the environment variable, generally can be successful.

# export ld_library_path = / usr / lib: / usr / local / lib # ./configuregrep: illegal option - qusage: grep-hblcnsviw pattern file................... checking for g ... g checking for C compiler default output ... a.outchecking whether the C compiler works ... yeschecking whether we are cross compiling ... nochecking for suffix of executables ... checking for suffix of object files ... ochecking whether we are using the GNU C compiler ... yeschecking whether g accepts -g ... yeschecking how to run the C preprocessor ... g -Echecking for a BSD-compatible install ... / usr / bin / install -cchecking for an ANSI C-Conforming Const ... YESCHECKING for Egrep ... Egrepchecking for Ansi C Header Files ... Yeschecking for Sys / Types.h ... Yeschecking for sys / stat.h .. YESCHECKING for STDLIB.H ... YESCHECKING for STRING.H ... YESCHECKING for Memory.h ... Yeschecking for intertys.h ... yeschecking for stdint.h ... Nochecking For unist dh .. yeschecking for size_t ... yeschecking vector.h usability ... yeschecking vector.h presence ... yeschecking for vector.h ... yeschecking vector usability ... yeschecking vector presence ... yeschecking for vector .. . yeschecking algorithm usability ... yeschecking algorithm presence ... yeschecking for algorithm ... yeschecking algo.h usability ... yeschecking algo.h presence ... yeschecking for algo.h ... yeschecking algo usability ... nochecking algo presence ... nochecking for algo ... noconfigure: creating ./config.statusconfig.status: creating Makefileconfig.status: creating bonnie.hconfig.status: creating port.hconfig.status: creating bonnie

.specconfig.status: creating bon_csv2htmlconfig.status: creating bon_csv2txtconfig.status: creating sun / pkginfoconfig.status: creating conf.hconfig.status: After conf.h is unchanged compiled generates bonnie , it can be used for testing.

2. Here are some test results

A.T3 big file reading and writing test

#./bonnie -d / data1 -u root -s 4096 -m billing

USING UID: 0, GID: 1.

Writing with putc () ... DONE

Writing Intelligently ... DONE

Rewriting ... DONE

Reading with getc () ... DONE

Reading Intelligently ... DONE

Start 'EM ... DONE ... DONE ... DONE ...

Create Files in Sequential Order ... DONE.

Stat Files in Sequential Order ... DONE.

Delete Files in Sequential Order ... done.

Create Files in Random Order ... DONE.

Stat Files in Random Order ... DONE.

DELETE FILES in Random Order ... DONE.

Version 1.03 ------ SEQUENTIAL OUTPUT ------ - Squential Input - --random

-Per chr- --block - -rewrite- -per chr- --block - - SEEKS -

Machine Size K / sec% CP K / sec% CP K / sec% CP K / sec% CP K / sec% CP / SEC% CP

Billing 4G 9915 87 30319 56 11685 38 9999 99 47326 66 177.6 3

------ Sequential Create ------------------------------------------------------------------------------------------------------------------------------------------------

-Create ------ -ndelete ---create-- ------ndelete--

Files / sec% CP / sec% CP / sec% CP / sec% CP / sec% CP / SEC% CP

16 639 19 1258 22 679 16 1197 27

Billing, 4G, 9915, 87, 30319, 56, 11685, 38, 9999, 99, 47326, 66, 177.6, 3, 16, 639, 19, , , 1258, 22, 679, 16, , , 1197, 27

b. EMC CLARiON CX500 Test Data

This is the test data after I have disabled Cache:

4 plates of RAID1 0 test:

#./bonnie -d / Eygle -u root -s 4096 -m jump

USING UID: 0, GID: 1.

File Size Should Be Double Ram for Good Results, RAM IS 4096M.

# ./bonnie -d / Eygle -u root -s 8192 -m jumpusing uid: 0, GID: 1.

Writing with putc () ... DONE

Writing Intelligently ... DONE

Rewriting ... DONE

Reading with getc () ... DONE

Reading Intelligently ... DONE

Start 'EM ... DONE ... DONE ... DONE ...

Create Files in Sequential Order ... DONE.

Stat Files in Sequential Order ... DONE.

Delete Files in Sequential Order ... done.

Create Files in Random Order ... DONE.

Stat Files in Random Order ... DONE.

DELETE FILES in Random Order ... DONE.

Version 1.03 ------ SEQUENTIAL OUTPUT ------ - Squential Input - --random

-Per chr- --block - -rewrite- -per chr- --block - - SEEKS -

Machine Size K / sec% CP K / sec% CP K / sec% CP K / sec% CP K / sec% CP / SEC% CP

JUMP 8G 12647 36 13414 8 7952 13 33636 97 146503 71 465.7 5

------ Sequential Create ------------------------------------------------------------------------------------------------------------------------------------------------

-Create ------ -ndelete ---create-- ------ndelete--

Files / sec% CP / sec% CP / sec% CP / sec% CP / sec% CP / SEC% CP

16 86 1 161 1 81 1 163 1

JUMP, 8G, 12647, 36, 13414, 8, 7952, 13, 33636, 97, 146503, 71, 465.7, 5, 16, 86, 1, , , 161, 1, 81, 1, , , 163, 1

4 plates of RAID5, disabled the speed after writing Cache:

#./bonnie -d / Eygle -u root -s 8192 -m jump

USING UID: 0, GID: 1.

Writing with putc () ... DONE

Writing Intelligently ... DONE

Rewriting ... DONE

Reading with getc () ... DONE

Reading Intelligently ... DONE

Start 'EM ... DONE ... DONE ... DONE ...

Create Files in Sequential Order ... DONE.

Stat Files in Sequential Order ... DONE.

Delete Files in Sequential Order ... done.

Create Files in Random Order ... DONE.

Stat Files in Random Order ... DONE.

DELETE FILES in Random Order ... DONE.VERSION 1.03 ------ Sequential Output ------ - SEQUENTIAL INPUT - --random

-Per chr- --block - -rewrite- -per chr- --block - - SEEKS -

Machine Size K / sec% CP K / sec% CP K / sec% CP K / sec% CP K / sec% CP / SEC% CP

JUMP 8G 10956 30 10771 6 3388 5 34169 98 158861 75 431.1 5

------ Sequential Create ------------------------------------------------------------------------------------------------------------------------------------------------

-Create ------ -ndelete ---create-- ------ndelete--

Files / sec% CP / sec% CP / sec% CP / sec% CP / sec% CP / SEC% CP

16 81 1 160 1 82 1 109 1

JUMP, 8G, 10956, 30, 10771, 6, 3388, 5, 34169, 98, 158861, 75, 431.1, 5, 16, 81, 1, , , 160, 1, 82, 1, , , 109, 1

Compare these two results we found (unit k / sec):

Character write

Block writes

Character read

Block read

RAID10

12,647

13,414

33,636

146,503

RAID5

10,956

10,771

34,169

158,861

DIFF

1,691

2,643

-533

-12, 358

We see that in direct reading, write RAID10 will be slightly faster than RAID5; and RAID5 will be slightly faster than RAID10, which is in line with our usual point of view.

What is needed here is usually, we recommend that redolog file is stored on the RAID10 disk because it has a write advantage.

转载请注明原文地址:https://www.9cbs.com/read-115539.html

New Post(0)