top of page
  • Writer's pictureadmin

Updated! Getting Detailed Performance Data from Initiator

By Stephen Hynes | October 26, 2018 | SANBlaze One of the features the SANBlaze software provides is detailed performance data over a test run. Before running initiator tests you must enable this feature:

There are a few options for collecting statistics. The LUN or Namespace is chosen in this example. You can export the data at any time, but in this example we are going to wait for the test to complete. Once the test has completed, there are multiple options for exporting the data. This is done by using the sb_filter tool from the CLI. Please consult the SANBlaze VirtuaLUN Enhanced Data Collection manual for more detailed information.

sb_filter -?


sb_filter [options]


-b Bin number to include (0 - 19), default is all, specify multiple if desired (ex. -b 0 -b 1)

-e EndTime (ex: -e 2/5/2015:16:00:00 or "2/5/2015 16:00:00)"

-s StartTime (ex: -s 2/5/2015:18:00:00 or "2/5/2015 18:00:00)"

-d DeltaTime (ex: -d 00:15:00, -d -3:00:00)

-f Output file name

-A Append to output file (don't overwrite)

-o Output format [CSV|JSON], if not specified will write both formats

-N Output at most this many lines

-P Pad output at 5-second intervals, when no data is available

-n List of input file names to process

-p Port range (ex: -p 2 -p 0,1,4-5)

-q Query [ReadLatency|WriteLatency|ReadUsecs|WriteUsecs|ReadIOs|WriteIOs|ReadBytes|WriteBytes|ReadCommandToTransferStartLatency|WriteCommandToTransferStartLatency|ReadCommandToFirstDataLatency|WriteCommandToFirstDataLatency|ReadCommandToLastDataLatency|WriteCommandToLastDataLatency|ReadCommandToStatusLatency|WriteCommandToStatusLatency]

Multiple queries can be specified (ex: -q ReadIOs -q WriteIOs)

-t Target range (ex: -t 2 -t 0,1,4-5)

-l LUN range (ex: -l 2 -l 0,1,4-5)

-a Array range (ex: -l 2 -l 0,1,4-5)

-i Specific LUNIds to include, enter as many as needed (ex: -i ### -i #### ... -i ###)

-x X Axis Options [log|time]

-y Y Axis Options [log]

-g Get data (0) or inventory (1)

-v be verbose (use multiple times for more verbosity)

StartTime +delta, EndTime +delta or Starttime and Endtime can be provided

If EndTime is not provided, current time is assumed

If StartTime is not provided, oldest data available is returned

Example: collecting the performance data on port 0 target 300 lun 1 after the test run. Determine the time the test was running. This can be done from the test results, find the StartTime and EndTime.

StartTime=Oct 23 16:19:07 EndTime=Oct 23 16:20:07

sb_filter -s 10/23/2018:16:09:00 -e 10/23/2018:16:21:00 -o CSV -p 0 -t 300 -l 1 -f /sfh/sb_data

Parsing performance data from /virtualun/webs/web/perf/init

Outputing data to /virtualun/webs/web/perf/output

Output format CSV


No datatypes specified, show all

Start time=Tue Oct 23 16:09:00 2018 (1540325340)

End time=Tue Oct 23 16:21:00 2018 (1540326060)

Reading file port0_target300_lun1

Using specified output file /sfh/sb_data

Output dataset to /sfh/sb_data.csv

There are 13 data items for port0_target300_lun1

How to Quickly View Your Results

Use the SANBlaze provided sb_graph.xlsx file to compare your results. Copy the exported CSV file to a location where you can access it from your windows system. With a few easy steps you can link this excel file to your CSV data to graph the data and quickly analyze your results.

Follow these steps to link your CSV data to Excel:

  1. Open sb_graph.xlsx

  2. Select the DATA tab.

  3. Select Connections

  4. Select Properties

  5. Select the Definitions tab

  6. Select Browse…

  7. Select the location where you have saved your csv file.

  8. Select Open

  9. Select Delimited radio button and click Next

  10. Under Delimiters, enable Comma checkbox and disable the other checkboxes, then click Finish

  11. Select OK

  12. Close the Workbook Connections

  13. Select Refresh ALL

There are 7 charts included in this spreadsheet.

  1. Write_Latency & Read_Latency. Both of these graphs are Total IOs at latencies falling within the 16 Data collection bins as described by LatencyStart and LatencyWidth. The goal of this graph is to see the IO distribution of the IOs latency. Note: There is a good chance that all IOs might be in WriteLatency[0] or WriteLatency[15] and or ReadLatency[0] or ReadLatency[15]. In that case you need to adjust LatencyStart and LatencyWidth for your test. Please Consult SANBlaze VirtuaLUN Enhanced Data Collection for more detailed information on this.

  2. Read_MinAvgMax_Latency. This graph will show the Read Latency minimum, Latency Average, and Latency Maximum in micro seconds.

  3. Write_MinAvgMax_Latency. This graph will show the Write Latency minimum, Latency Average, and Latency Maximum in micro seconds.

  4. Read_Write_MinAvgMax_Latency. This graph will show both Read and Write Latency minimum, Latency Average, and Latency Maximum in micro seconds.

  5. Read_Write_IOPs. This graph will show the Read and Write IO per second.

  6. Read_Write_Bytes. This graph will show the Read and Write Bytes per second.

Advanced Excel Users: How this Excel Spreadsheet works:

  • The sb_data sheet links to the CSV output you have set up (see above.)

  • Each of the headings on this sheet are defined as a name.

  • You can find these names under the Formulas tab and Name Manager.

For Example:

ReadLatency_0 =OFFSET(sb_data!$L$2,0,0,COUNTA(sb_data!$L:$L)-1)

This allows for your CSV files to have a different number of samples, and the graphs will auto scale to the number of points in that column. To update your CSV file, select Refresh and all the graphs will update.

All graphs included use these names for the Series values. If you would like to create additional plots, you can do so by using the predefined names. When selecting the data to graph, set the Series values: =sb_graphs.xlsx!HeadingName.

Click here to download the sb_graph.xlsx spreadsheet.

334 views1 comment

1 Comment

I tried to download this xlsx but it does not work.

bottom of page