Benchmarking

From wiki.mikejung.biz
Revision as of 15:59, 25 September 2014 by Admin (talk | contribs) (Created page with "= Benchmarking Tools = == SSD Break In == This should work ok with larger SSDs / RAIDS. Might want to rinse and repeat a few times and continue testing until the results are...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Benchmarking Tools

SSD Break In

This should work ok with larger SSDs / RAIDS. Might want to rinse and repeat a few times and continue testing until the results are stable. This could take a few hours of testing to complete. Also, you will want to try and test the drives / arrays with about 80-90% utilization (make sure the drives free space is around 10%)

dd if=/dev/zero of=bigfile bs=1M count=100000
dd if=/dev/zero of=bigfile1 bs=1M count=100000
dd if=/dev/zero of=bigfile2 bs=1M count=100000
dd if=/dev/zero of=bigfile3 bs=1M count=100000
dd if=/dev/zero of=bigfile4 bs=1M count=100000
dd if=/dev/zero of=bigfile5 bs=1M count=100000
dd if=/dev/zero of=bigfile6 bs=1M count=100000
rm -f bigfile*

fio

To install:

apt-get install fio

Storage Review Fio Test

fio --filename=/dev/sdx --direct=1 --rw=randrw --refill_buffers --norandommap --randrepeat=0 --ioengine=libaio --bs=4k --rwmixread=100 --iodepth=16 --numjobs=16 --runtime=60 --group_reporting --name=4ktest

Simple Write Tests:

#### Sequential Write test ####
fio --name=writers --ioengine=libaio --iodepth=1 --rw=write --bs=64k --direct=0 --size=2048m --numjobs=1

## Multiple Jobs (Typcailly running this around 8 should provide the max throughput
fio --name=writers --ioengine=libaio --iodepth=1 --rw=write --bs=64k --direct=0 --size=2048m --numjobs=8

Simple Random Write Tests:

# Write Bandwidth test
fio --name=writebw --filename=/dev/fioa --direct=1 --rw=randwrite --bs=1m --numjobs=4 --iodepth=32 --direct=1 --iodepth_batch=16 --iodepth_batch_complete=16 --runtime=300 --ramp_time=5 --norandommap --time_based --ioengine=libaio --group_reporting

# Read IOPS test
fio --name=readiops --filename=/dev/fioa --direct=1 --rw=randwrite --bs=512 --numjobs=4 --iodepth=32 --direct=1 --iodepth_batch=16 --iodepth_batch_complete=16 --runtime=300 --ramp_time=5 --norandommap --time_based --ioengine=libaio --group_reporting

# Read Bandwidth test
fio --name=readbw --filename=/dev/fioa --direct=1 --rw=randread --bs=1m --numjobs=4 --iodepth=32 --direct=1 --iodepth_batch=16 --iodepth_batch_complete=16 --runtime=300 --ramp_time=5 --norandommap --time_based --ioengine=libaio --group_reporting

# Write IOPS test
fio --name=writeiops --filename=/dev/fioa --direct=1 --rw=randwrite --bs=512 --numjobs=4 --iodepth=32 --direct=1 --iodepth_batch=16 --iodepth_batch_complete=16 --runtime=300 --ramp_time=5 --norandommap --time_based --ioengine=libaio --group_reporting

More Tests:

***Sequential Write Tests QD based**
fio --name=write --ioengine=libaio --iodepth=1 --rw=write --bs=64k --direct=0 --size=20G --numjobs=1

fio --name=write --ioengine=libaio --iodepth=8 --rw=write --bs=64k --direct=0 --size=20G --numjobs=1

fio --name=write --ioengine=libaio --iodepth=64 --rw=write --bs=64k --direct=0 --size=20G --numjobs=1

=========================================================================================================

***Sequential Write Tests QD 64, Jobs based**
fio --name=write --ioengine=libaio --iodepth=64 --rw=write --bs=64k --direct=0 --size=20G --numjobs=4

fio --name=write --ioengine=libaio --iodepth=64 --rw=write --bs=64k --direct=0 --size=20G --numjobs=8

fio --name=write --ioengine=libaio --iodepth=64 --rw=write --bs=64k --direct=0 --size=20G --numjobs=16

=========================================================================================================

**Sequential Read Tests QD based**
fio --name=read --ioengine=libaio --iodepth=1 --rw=read --bs=64k --direct=0 --size=20G --numjobs=1

fio --name=read --ioengine=libaio --iodepth=8 --rw=read --bs=64k --direct=0 --size=20G --numjobs=1

fio --name=read --ioengine=libaio --iodepth=64 --rw=read --bs=64k --direct=0 --size=20G --numjobs=1

=========================================================================================================

**Sequential Read Tests QD 64, Jobs based**
fio --name=read --ioengine=libaio --iodepth=64 --rw=read --bs=64k --direct=0 --size=20G --numjobs=4

fio --name=read --ioengine=libaio --iodepth=64 --rw=read --bs=64k --direct=0 --size=20G --numjobs=8

fio --name=read --ioengine=libaio --iodepth=64 --rw=read --bs=64k --direct=0 --size=20G --numjobs=16

=========================================================================================================

**Random Write Tests QD based**
fio --name=randwrite --ioengine=libaio --iodepth=1 --rw=randwrite --bs=4k --direct=0 --size=5G --numjobs=1

fio --name=randwrite --ioengine=libaio --iodepth=8 --rw=randwrite --bs=4k --direct=0 --size=5G --numjobs=1

fio --name=randwrite --ioengine=libaio --iodepth=64 --rw=randwrite --bs=4k --direct=0 --size=5G --numjobs=1

=========================================================================================================

**Random Write Tests QD64 Jobs based**

fio --name=randwrite --ioengine=libaio --iodepth=64 --rw=randwrite --bs=4k --direct=0 --size=5G --numjobs=4

fio --name=randwrite --ioengine=libaio --iodepth=64 --rw=randwrite --bs=4k --direct=0 --size=5G --numjobs=8

=========================================================================================================

**Random Read Tests QD based**
fio --name=randread --ioengine=libaio --iodepth=1 --rw=randread --bs=4k --direct=0 --size=5G --numjobs=1

fio --name=randread --ioengine=libaio --iodepth=8 --rw=randread --bs=4k --direct=0 --size=5G --numjobs=1

fio --name=randread --ioengine=libaio --iodepth=64 --rw=randread --bs=4k --direct=0 --size=5G --numjobs=1

=========================================================================================================

**Randm Read Tests QD 64, Jobs based**
fio --name=randread --ioengine=libaio --iodepth=64 --rw=randread --bs=4k --direct=0 --size=5G --numjobs=4

fio --name=randread --ioengine=libaio --iodepth=64 --rw=randread --bs=4k --direct=0 --size=5G --numjobs=8

AWS tests:

##The following command performs 16 KB random write operations.

fio --name fio_test_file --direct=1 --rw=randwrite --bs=4k --size=1G --numjobs=16 --time_based --runtime=180 --group_reporting

##The following command performs 16 KB random read operations.

fio --name fio_test_file --direct=1 --rw=randread --bs=4k --size=1G --numjobs=16 --time_based --runtime=180 --group_reporting

DD Write Tests

You can use this to break in new SSDs, ideally you will want to fill up the drive to about 90% remove the files, and repeat a few times to cause the garbage collection to kick in.

dd if=/dev/zero of=ddtest1 bs=1M count=8192 conv=fdatasync
dd if=/dev/zero of=ddtest2 bs=1M count=8192 conv=fdatasync
dd if=/dev/zero of=ddtest3 bs=1M count=8192 conv=fdatasync
rm -f ddtest1 ddtest2 ddtest3
dd if=/dev/zero of=ddtest1 bs=1M count=8192 conv=fdatasync
dd if=/dev/zero of=ddtest2 bs=1M count=8192 conv=fdatasync
dd if=/dev/zero of=ddtest3 bs=1M count=8192 conv=fdatasync
rm -f ddtest1 ddtest2 ddtest3

This is a test for small writes.

dd if=/dev/zero of=test bs=4K count=2000000 conv=fdatasync ; sleep 10 ; dd if=/dev/zero of=test bs=4K count=2000000 conv=fdatasync ; sleep 10 ; dd if=/dev/zero of=test bs=4K count=2000000 conv=fdatasync

sysbench

Install

Download and install Repos (Cent 6.5)

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
yum install sysbench

Install Sysbench on CentOS 7

This should work ok for CentOS 7, verified it does indeed install sysbench 0.4.12

wget ftp://ftp.gnome.org/mirror/fedora/epel/6/x86_64/sysbench-0.4.12-5.el6.x86_64.rpm
wget http://downloads.mysql.com/archives/mysql-5.1/MySQL-shared-compat-5.1.49-1.rhel5.x86_64.rpm
rpm -iv MySQL-shared-compat-5.1.49-1.rhel5.x86_64.rpm
yum install postgresql-libs.x86_64
rpm -iv sysbench-0.4.12-5.el6.x86_64.rpm

Test Script

Prepare the server

apt-get update
apt-get install -y sysbench 
apt-get install -y mysql-server
sysbench --test=fileio --file-total-size=4G --file-num=64 prepare

mysql -u root -ppassword -e "CREATE DATABASE sysbench;"
mysql -u root -ppassword -e "CREATE USER 'sysbench'@'localhost' IDENTIFIED BY 'password';"
mysql -u root -ppassword -e "GRANT ALL PRIVILEGES ON *.* TO 'sysbench'@'localhost' IDENTIFIED  BY 'password';"
sysbench --test=oltp --db-driver=mysql --oltp-table-size=40000000 --mysql-db=sysbench --mysql-user=sysbench --mysql-password=password prepare


#!/bin/bash

for run in 1 2 3 ;do
for thread in 1 4 8 16 32 ;do

echo "Performing test RW-${thread}T-${run}"
sysbench --test=fileio --file-total-size=4G --file-test-mode=rndwr --max-time=60 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=${thread} run > /root/RW-${thread}T-${run}

echo "Performing test RR-${thread}T-${run}"
sysbench --test=fileio --file-total-size=4G --file-test-mode=rndrd --max-time=60 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=${thread} run > /root/RR-${thread}T-${run}

echo "Performing test SQ-${thread}T-${run}"
sysbench --test=oltp --db-driver=mysql --oltp-table-size=40000000 --mysql-db=sysbench --mysql-user=sysbench --mysql-password=password --max-time=60 --max-requests=0 --num-threads=${thread} run > /root/SQ-${thread}T-${run}

done
done

Various Tests

Disk Tests

##The size of the file depends on the amount of RAM in the system, so if you have 32GB RAM installed, the test file needs to be larger than 32GB
sysbench --test=fileio --file-total-size=60G --file-num=64 prepare

##Random Write using no fsync (Should show the highest potential random writes)
sysbench --test=fileio --file-total-size=60G --file-test-mode=rndwr --max-time=720 --max-requests=0 --num-threads=8 --file-num=64 --file-io-mode=async --file-extra-flags=direct --file-fsync-freq=0 run

##Random Write using default fsync (Should show typical fsync behavior)
sysbench --test=fileio --file-total-size=60G --file-test-mode=rndwr --max-time=720 --max-requests=0 --num-threads=8 --file-num=64 --file-io-mode=async --file-extra-flags=direct --file-fsync-freq=0 run


##Random Read Only
sysbench --test=fileio --file-total-size=20G --file-test-mode=rndrd --max-time=240 --max-requests=0 --num-threads=${1,8,64} run

##Mixed Random Read and Write
sysbench --test=fileio --file-total-size=20G --file-test-mode=rndrw --max-time=240 --file-fsync-all --max-requests=0 --num-threads=${1,8,64} run


###For Loops

###RAND WRITE 1 - 16 thread
for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndwr --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=1 run; done; sleep 10; for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndwr --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=4 run; done; sleep 10; for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndwr --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=8 run; done; sleep 10; for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndwr --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=16 run; done;

###RAND READ 1 - 16 thread
for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndrd --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=1 run; done; sleep 10;for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndrd --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=4 run; done; sleep 10;for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndrd --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=8 run; done; sleep 10;for each in {1..3} ; do sysbench --test=fileio --file-total-size=5G --file-test-mode=rndrd --max-time=240 --max-requests=0 --file-block-size=4K --file-num=64 --num-threads=16 run; done; sleep 10;

CPU Tests

##This test defaults to using 1 thread, good to run with one thread, then 32 or whatever
sysbench --test=cpu --cpu-max-prime=20000 run

sysbench --test=cpu --cpu-max-prime=20000 --num-threads=32 run

RAM Tests

sysbench --test=memory --memory-block-size=1K --memory-scope=global --memory-total-size=100G --memory-oper=read run

sysbench --test=memory --memory-block-size=1K --memory-scope=global --memory-total-size=100G --memory-oper=write run

Using OLTP with custom .lua scripts

##Install and move to the db test directory##
wget wget http://www.lefred.be/files/sysbench-0.5-3.el6_.x86_64.rpm
rpm -iv sysbench-0.5-3.el6_.x86_64.rpm
cd /usr/share/doc/sysbench/tests/db

##Prepare a test table on the target system##
sysbench --test=parallel_prepare.lua --oltp-table-size=10000000 --mysql-host=$remote_host --mysql-db=sysbench --mysql-user=sysbench --mysql-password=password --oltp-tables-count=1 --num-threads=32 prepare

##Run Tests based off of .lua##
sysbench --test=oltp_simple.lua --oltp-table-size=10000000 --mysql-host=$remote_host --mysql-db=sysbench --mysql-user=sysbench --mysql-password=password --oltp-read-only=on --oltp-skip-trx=on    --max-time=120 --max-requests=0 --max-time=120 --num-threads=512 run


MySQL Tests

##Create Database 
CREATE DATABASE sysbench;

##Create User
CREATE USER 'sysbench'@'localhost' IDENTIFIED BY '$password';

##Grant Access 
GRANT ALL PRIVILEGES ON *.* TO 'sysbench'@'localhost' IDENTIFIED  BY '$password';

##Prepare a test table
sysbench --test=oltp --db-driver=mysql --oltp-table-size=10000000 --mysql-db=sysbench --mysql-user=root --mysql-password=password prepare

##Read-Only Test without "BEGIN"
sysbench --db-driver=mysql --test=oltp --oltp-table-size=10000000 --mysql-host=$IP --mysql-db=sysbench --mysql-user=sysbench --mysql-password=$password --max-time=120 --max-requests=0 --oltp-read-only --oltp-skip-trx  --oltp-nontrx-mode=select --num-threads=256 run

##Read-Only Test
sysbench --test=oltp --oltp-table-size=10000000 --mysql-db=sysbench --mysql-user=root --mysql-password=password --max-time=60 --oltp-read-only=on --max-requests=0 --num-threads=8 run

##Mixed Test
sysbench --test=oltp --oltp-table-size=10000000 --mysql-db=sysbench --mysql-user=root --mysql-password=password --max-time=60 --max-requests=0 run

##Mixed Test 8 threads
sysbench --test=oltp --oltp-table-size=10000000 --mysql-db=sysbench --mysql-user=root --mysql-password=password --max-time=60 --max-requests=0 --num-threads=8 run

##16 threads, Random connect / disconnect for threads
sysbench --test=oltp --oltp-table-size=10000000 --mysql-db=sysbench --mysql-user=root --mysql-password=password --max-time=60 --max-requests=0 --num-threads=16 --oltp-reconnect-mode=random run
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/common.lua-20110427224028-j1y84gokmt93n8xn-1/common.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/sysbenchtestsdbinser-20090113060453-687cibzqa6u5f1i4-115/insert.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/oltp.lua-20110427224028-j1y84gokmt93n8xn-2/oltp.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/sysbenchtestsdboltp_-20090113060453-687cibzqa6u5f1i4-118/oltp_simple.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/sysbenchtestsdbselec-20090113060453-687cibzqa6u5f1i4-119/select.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/select_random_points-20101028165209-ue1iedn6sn5azlvx-1/select_random_points.lua
wget http://bazaar.launchpad.net/~vadim-tk/sysbench/sysbench-db-scripts/download/head:/select_random_ranges-20101028165209-ue1iedn6sn5azlvx-2/select_random_ranges.lua

Phoronix

Phoronix Test Suite http://www.phoronix-test-suite.com/?k=downloads

wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_5.2.0_all.deb
apt-get install php5-cli php5-gd php5-json
dpkg -i phoronix-test-suite_5.2.0_all.deb

Basic Web / PHP Tests

## Resolve the Nginx issue with Ubunut
echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p

/usr/bin/phoronix-test-suite benchmark pts/apache

/usr/bin/phoronix-test-suite benchmark pts/nginx

/usr/bin/phoronix-test-suite benchmark pts/phpbench


Here is a list of some CPU intensive suites to run

phoronix-test-suite benchmark pts/cpu
phoronix-test-suite benchmark pts/cryptography
phoronix-test-suite benchmark pts/database
phoronix-test-suite benchmark pts/java

Suite tests (A lot of tests wrapped up into one)

## See what tests are available
phoronix-test-suite list-tests
## Basic CPU test
phoronix-test-suite benchmark pts/cpu
## Basic Disk test
phoronix-test-suite benchmark pts/disk
## Basic RAM test
phoronix-test-suite benchmark pts/memory
## Overall system test
phoronix-test-suite benchmark pts/linux-system
## Overall mobo test
phoronix-test-suite benchmark pts/server

Individual tests

Disk / File System Tests

##fio is an advanced disk benchmark that depends upon the kernel's AIO access library.
phoronix-test-suite benchmark pts/fio

##AIO-Stress is an a-synchronous I/O benchmark created by SuSE. Current this profile uses a 2048MB test file and a 64KB record size.
phoronix-test-suite benchmark pts/aio-stress

##Dbench is a benchmark designed by the Samba project as a free alternative to netbench, but dbench contains only file-system calls for testing the disk performance.
phoronix-test-suite benchmark pts/dbench

##The IOzone benchmark tests the hard disk drive / file-system performance.
phoronix-test-suite benchmark pts/iozone

##Compilebench tries to age a filesystem by simulating some of the disk IO common in creating, compiling, patching, stating and reading kernel trees. It indirectly measures how well filesystems can maintain directory locality as the disk fills up and directories age. This current test is setup to use the makej mode with 10 initial directories
phoronix-test-suite benchmark pts/compilebench

CPU Tests

##Smallpt is a C++ global illumination renderer written in less than 100 lines of code. Global illumination is done via unbiased Monte Carlo path tracing and there is multi-threading support via the OpenMP library.
phoronix-test-suite benchmark pts/smallpt

##This test measures the time needed to compress a file using Gzip compression.
phoronix-test-suite benchmark pts/compress-gzip
 
##Time how long it takes to calculate pi to varying lengths.
phoronix-test-suite benchmark pts/systester

##This is a benchmark of John The Ripper, which is a password cracker.
phoronix-test-suite benchmark pts/john-the-ripper

##This is a test of C-Ray, a simple raytracer designed to test the floating-point CPU performance. This test is multi-threaded (16 threads per core), will shoot 8 rays per pixel for anti-aliasing, and will generate a 1600 x 1200 image.
phoronix-test-suite benchmark pts/c-ray

##NPB, NAS Parallel Benchmarks, is a benchmark developed by NASA for high-end computer systems. This test profile currently uses the MPI version of NPB.
phoronix-test-suite benchmark pts/npb

##This is a test of ab, which is the Apache benchmark program. This test profile measures how many requests per second a given system can sustain when carrying out 700,000 requests with 100 requests being carried out concurrently.
phoronix-test-suite benchmark pts/apache

RAM / Cache Tests

##This benchmark tests the system memory (RAM) performance.
phoronix-test-suite benchmark pts/ramspeed

##This benchmark tests the system memory (RAM) performance.
phoronix-test-suite benchmark pts/stream

##CacheBench is designed to test the memory and cache bandwidth performance
phoronix-test-suite benchmark pts/cachebench 

##PHPBench is a benchmark suite for PHP. It performs a large number of simple tests in order to bench various aspects of the PHP interpreter. PHPBench can be used to compare hardware, operating systems, PHP versions, PHP accelerators and caches, compiler options, etc.
phoronix-test-suite benchmark pts/phpbench

IOzone

This will run a ton of IOzone tests, sleeping for 60 seconds in-between them

iozone -l 8 -i 0 -i 1 -i 2 -e -+n -r 4K -s 1G -O ;
sleep 60 ;
iozone -l 8 -i 0 -i 1 -i 2 -e -+n -r 4K -s 1G ;
sleep 60 ; 
iozone -e -s 12G -r 64K -t 1 -i 0 -i 1 -+n ; 
sleep 60 ; 
iozone -e -s 12G -r 64K -t 1 -i 0 -i 1 -+n ;
sleep 60 ; 
iozone -e -s 12G -r 64K -t 1 -i 0 -i 1 -+n ; 
sleep 60 ; 
iozone -t 1 -i 0 -i 1 -i 2 -e -+n -r 4K -s 12G -O ; 
sleep 60 ;
iozone -t 1 -i 0 -i 1 -i 2 -e -+n -r 4K -s 12G -O

IOzone commands

##Sequential Write, 64K requests, 32 threads:
iozone -I -t 32 -M -O -r 64k -s 500m -+u -w -i 0

##Sequential Read, 64K requests, 32 threads:
iozone -I -t 32 -M -O -r 64k -s 500m -+u -w -i 1

##Random Read/Write, 4K requests, 32 threads:
iozone -I -t 32 -M -O -r 4k -s 500m -+u -w -i 2

IOzone command line options

##Save output to spreadsheet
-b $filename

##Specify test types
-i [1-13]

    0=write/rewrite
    1=read/re-read
    2=random-read/write
    3=Read-backwards
    4=Re-write-record
    5=stride-read
    6=fwrite/re-fwrite
    7=fread/Re-fread,
    8=random mix
    9=pwrite/Re-pwrite
    10=pread/Re-pread
    11=pwritev/Re-pwritev
    12=preadv/Re-preadv

Specify the file size using iozone (file size used to test)
-s $number (1M, 512M, 4G, etc)

Specify the record size for testing
-r $number (1K, 4K, 64K, etc)

Throughput test
-t $threads

Increase the file size
-g $number (usually should be 3x amount of RAM)


Personal tests (work in progress). This should give a good measurement of sequencial reads and writes, the file size will need to be larger than RAM on the server, but 12GB is usually a good starting point.

##Use fsync,file size is 12GB, record size is 64K, use 1 thread for throughput, test read and write, no re-tests, save to file.

iozone -e -s 12G -r 64K -t 1 -i 0 -i 1 -+n -b 12GB_64K_RW.txt

##Use fsync,file size is 12GB, record size is 64K, use 1 thread for throughput, test read and write, no re-tests, save to file, output in OPS/s

iozone -e -s 12G -r 64K -t 1 -i 0 -i 1 -+n -O -b 12GB_64K_RW_OPS.txt