Architecture & Performance
Technology4 April 20253 min de lectureArticle en anglais

Powershell IOMeter Parser

When it comes to benchmarking disks, choosing the right tool can be a challenging task. Even once the tool is selected, analyzing the results can often feel just as difficult.…

Pierre-Antoine Collet
Pierre-Antoine Collet
Expert en Performance IT
Sommaire

When it comes to benchmarking disks, choosing the right tool can be a challenging task. Even once the tool is selected, analyzing the results can often feel just as difficult. This is the case with IOMeter, a popular benchmarking tool that outputs results in a CSV format that is virtually unreadable to humans. The raw data is extensive and requires some effort to make sense of it. That's why I created this PowerShell parser for IOMeter (Available on aetperf/IOMeterParser) — to simplify the process, making it easier to extract and analyze key performance metrics from IOMeter's CSV files in JSON format.**

1.  How to generate IOMeter CSV File

**

IOMeter is a powerful tool used for disk benchmarking, but the format of its output can be a bit difficult to interpret directly. When you run a benchmark test using IOMeter, the results are typically saved in a CSV file. The CSV contains various metrics about the performance of your disk under test, including throughput, response times, and other important performance indicators.

Here's a brief tutorial of how to generate IOMeter CSV file :

**

2. How the PowerShell Parser Works

The PowerShell parser is designed to automate the extraction of useful data from IOMeter’s raw CSV output. It reads the input CSV files, extracts key performance metrics (like throughput, response times, CPU usage), and organizes the results into a structured JSON format. This makes it much easier to analyze and interpret the results. The script also allows you to filter data based on specific criteria, such as excluding processor or worker data.

3. How to Use the PowerShell Script

**

Before using the command line, you need to clone github repository with powershell script on it : aetperf/IOMeterParser

To use the parser, you need to provide three mandatory parameters:

  • csvDirectory: The directory where the IOMeter CSV files are located.

  • csvPattern: The file pattern (e.g., *.csv) to match the files you want to parse.

  • outputJsonPath: The file path where the JSON output will be saved.

You can also include optional flags (-notIncludeProcessors,``-notIncludeWorkers)to exclude certain data, such as processor or worker information.

Example Command :

.\parserIOMeter.ps1 -csvDirectory "C:\IOMeter\results" -csvPattern "*.csv" -outputJsonPath "C:\IOMeter\output\benchmark_results.json"

**

4. Understanding the JSON Output

**

The generated JSON file contains several sections that represent different aspects of the benchmark test. Here’s an example structure:

  • Test Type: The type of benchmark test that was run (e.g., "HDD_D_NTFS").

  • Test Results All: Contains the general test results (throughput, response times) for all agents.

  • Test Results Managers: Includes the results specific to the manager agents.

  • Test Results Workers: Includes results specific to the worker agents.

  • Test Results Processors: Includes results specific to the processor agents.

  • Access Specifications: Lists the access specifications used in the benchmark.

Each section contains key performance metrics that can help you analyze the disk’s performance under various conditions.

Once you have the results in JSON format, it becomes easier to import and visualize the data using tools like Tableau or PowerBI. These tools allow you to create charts, graphs, and dashboards to analyze trends, compare test results, and gain insights into disk performance across multiple benchmarks. The structured JSON output is compatible with these visualization tools, enabling you to create meaningful reports and share the results with others.

Conclusion

Using IOMeter for disk benchmarking can provide valuable insights into disk performance, but the raw CSV output can be difficult to interpret and analyze. With the help of the PowerShell parser, the complex CSV data is converted into a structured JSON format, making it much easier to extract and analyze key performance metrics. This structured output not only simplifies data interpretation but also enhances the ability to visualize results using powerful tools like Tableau or PowerBI. By streamlining the data analysis process, this approach enables more efficient benchmarking and a clearer understanding of disk performance, helping to make informed decisions based on accurate, visualized data.

Besoin d'aide sur ce sujet ?

Notre équipe d'experts est à votre disposition pour vous accompagner.

Contactez-nous