Add support for measuring storage performance use fio
[yardstick.git] / samples / fio.yaml
1 ---
2 # Sample benchmark task config file
3 # measure storage performance using fio
4 #
5 # For this sample just like running the command below on the test vm and 
6 # getting benchmark info back to the yardstick.
7 #
8 # sudo fio -filename=/home/ec2-user/data.raw -bs=4k -rw=write -ramp_time=10 \
9 #          -runtime=60 -name=yardstick-fio -ioengine=libaio -direct=1 \
10 #          -group_reporting -numjobs=1 -time_based --output=yardstick-fio.log
11 #
12 # When the above fio command done, the yardstick-fio.log file will contain 
13 # information like below and the benchmark script will take iops, throughput 
14 # and latency info marked with "" to create json style output.
15 #
16 # yardstick-fio: (g=0): rw=write, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=1
17 # fio-2.1.3
18 # Starting 1 process
19 #
20 # yardstick-fio: (groupid=0, jobs=1): err= 0: pid=1421: Mon Jul  6 01:25:41 2015
21 #   write: io=1985.4MB, bw=33882KB/s, iops="8470", runt= 60001msec
22 #     slat (usec): min=6, max=15049, avg=10.29, stdev=19.42
23 #     clat (usec): min=1, max=18517, avg=105.68, stdev=37.76
24 #      lat ("usec"): min=85, max=18528, avg="116.30", stdev=43.57
25 #     clat percentiles (usec):
26 #      |  1.00th=[   83],  5.00th=[   85], 10.00th=[   87], 20.00th=[   88],
27 #      | 30.00th=[   90], 40.00th=[   93], 50.00th=[   98], 60.00th=[  102],
28 #      | 70.00th=[  110], 80.00th=[  124], 90.00th=[  137], 95.00th=[  149],
29 #      | 99.00th=[  173], 99.50th=[  181], 99.90th=[  203], 99.95th=[  290],
30 #      | 99.99th=[  604]
31 #     bw (KB  /s): min=    0, max=39816, per=99.26%, avg=33631.46, stdev=4369.58
32 #     lat (usec) : 2=0.01%, 50=0.01%, 100=55.44%, 250=44.50%, 500=0.02%
33 #     lat (usec) : 750=0.04%, 1000=0.01%
34 #     lat (msec) : 2=0.01%, 4=0.01%, 10=0.01%, 20=0.01%
35 #   cpu          : usr=4.09%, sys=16.38%, ctx=604931, majf=0, minf=27
36 #   IO depths    : 1=118.9%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
37 #      submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
38 #      complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
39 #      issued    : total=r=0/w=508237/d=0, short=r=0/w=0/d=0
40 #
41 # Run status group 0 (all jobs):
42 #   WRITE: io=1985.4MB, aggrb="33881KB/s", minb=33881KB/s, maxb=33881KB/s, mint=60001msec, maxt=60001msec
43 #
44 # Disk stats (read/write):
45 #   vda: ios=0/604235, merge=0/211, ticks=0/61964, in_queue=61804, util=86.25%
46
47 schema: "yardstick:task:0.1"
48
49 scenarios:
50 -
51   type: Fio
52   options:
53     filename: /home/ec2-user/data.raw
54     bs: 4k
55     rw: write
56     ramp_time: 10
57   host: fio.demo
58   runner:
59     type: Duration
60     duration: 60
61     interval: 60
62
63 context:
64   name: demo
65   image: yardstick-trusty-server
66   flavor: yardstick-flavor
67   user: ec2-user
68   servers:
69     fio:
70       floating_ip: true
71   networks:
72     test:
73       cidr: "10.0.1.0/24"
74       external_network: "net04_ext"