Host Driver Overhead Isolation for Storage Performance Measurement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Measuring the performance of data storage systems, such as solid state drives, is challenging due to testing system overhead that skews performance characteristics, especially in high-performance systems where host system overhead time is significant.
Innovation Solution
A driver in the host system receives command messages to communicate storage access commands to a data storage system controller, determining and reporting total execution time while minimizing communication overhead by processing commands in sets and receiving execution results efficiently, thus isolating host system overhead from performance metrics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional performance testing methods are used, then performance measurements can be obtained, but host system overhead time skews the accuracy of performance characteristics
Solution Approach 1:
The patent extracts and isolates the host system overhead time from the total execution time measurement. By separately measuring and subtracting the host system overhead, the invention obtains the true storage device performance without contamination from host system delays, thereby resolving the measurement accuracy problem.
Solution Approach 2:
The patent introduces an intermediary measurement approach using multiple threads and processors to act as mediators between the host system and storage device. These intermediaries help separate and identify the host overhead portion from the actual storage device performance, enabling accurate measurement by filtering out the contaminating overhead time.
2Measurement precision
If multiple threads and processors are used, then host system overhead can be minimized, but device complexity increases
Solution Approach 1:
The patent segments the performance testing process into multiple independent threads and processor tasks. Each thread handles specific aspects of command execution and timing measurement, allowing parallel operation that reduces overall overhead while distributing the complexity across modular, manageable components rather than a monolithic complex system.
Data Source
AI summary
A combination of a host system and data storage system that enables accurate performance testing of the storage subsystem is disclosed. In one embodiment, a driver of a host system receives a command message from a host system application. The command message enables the driver to generate and communicate one or more storage access commands to the data storage system. The driver then receives one or more execution results from the data storage system and determines and communicates the total execution time of the one or more storage access commands to the host system application. When the host system application determines performance of the data storage system the undesirable impact of the communication overhead between the host system application and the driver is minimized. Accordingly, accurate performance measurements of data storage systems are obtained.


