forked from storagesw/pio
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Irad Cohen
committed
Mar 19, 2015
1 parent
8d2b856
commit 37cf3c6
Showing
2 changed files
with
40 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,9 +18,19 @@ Setup | |
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py | ||
python ez_setup.py --insecure | ||
|
||
- Setup no password SSH between participating hosts | ||
- Setup no password SSH to all slave nodes (in this example they are named | ||
node01, node02 and node03): | ||
|
||
- Install FIO | ||
ssh-keygen -t rsa -N '' | ||
for n in node01 node02 node03; do | ||
ssh-copy-id -i ~/.ssh/id_rsa.pub $n | ||
done | ||
|
||
- Install PIO (master node only): | ||
|
||
python setup.py install | ||
|
||
- Install FIO on all slave nodes: | ||
|
||
# setup libAIO | ||
zypper install libaio libaio-devel # sles | ||
|
@@ -35,31 +45,38 @@ Setup | |
make install | ||
|
||
- *OPTIONAL* Installing FSTEST - contact SAP for the following files: fstest, | ||
libhdbbasis.so, libhdblttbase.so, libhdbversion.so | ||
libhdbbasis.so, libhdblttbase.so, libhdbversion.so and run: | ||
mkdir -p lib/fstest | ||
cp fstest lib/fstest/ | ||
cp libhdb*.so lib/fstest/ | ||
|
||
- Install PIO: | ||
|
||
python setup.py install | ||
Usage | ||
----- | ||
#### Performance Scenario | ||
For example, a master node coordinates 3 slave nodes (node01, node02 and | ||
node03) to run several fio workloads that cover reads and writes, with | ||
different block sizes (4k, 16k, 64k, 256k, 1M), all random, where each job is | ||
run for 60 seconds. | ||
|
||
pio perf -t random:read,write:4k,16k,64k,256k,1M -o output_file -l 60 \ | ||
fio /mnt/storage node01 node02 node03 | ||
|
||
- "/mnt/storage" is a directory that is accessible on all slave nodes (does not | ||
have to be shared). | ||
|
||
|
||
Perf | ||
---- | ||
pio perf -h | ||
In order to plot the data to a nice graph, run: | ||
|
||
Plot | ||
---- | ||
pio plot -h | ||
pio plot -a . | ||
gnuplot plot.gp | ||
|
||
Durability | ||
---------- | ||
pio dur -h | ||
#### Durability Scenario | ||
Initialize a data file that lays on the evaluated storage system. Mess around | ||
with the system (power shortage, faulty disks, etc.), then check that the data | ||
is not corrupted. | ||
|
||
pio dur init /mnt/storage | ||
|
||
Development Mode | ||
---------------- | ||
python setup.py develop | ||
pio dur validate /mnt/storage | ||
|
||
Contact | ||
------- | ||
- Irad Cohen, [email protected] | ||
- Aidan Shribman, [email protected] | ||
- Mark Kemel, [email protected] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters