A solid-state drive storage performance evaluation system

By combining initial state analysis, write amplification monitoring, and historical interference identification modules, the problems of initial state differences and garbage collection interference in solid-state drive storage performance evaluation are solved, achieving highly accurate performance evaluation.

CN122309315APending Publication Date: 2026-06-30SHENZHEN YICHU ELECTRONICS CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHENZHEN YICHU ELECTRONICS CO LTD
Filing Date
2026-04-07
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing technologies for evaluating solid-state drive (SSD) storage performance suffer from inaccurate test results due to differences in initial conditions and a lack of real-time monitoring of write amplification fluctuations during garbage collection, resulting in insufficient accuracy of evaluation data and a lack of fair benchmarks for horizontal comparisons.

Method used

The initial state analysis module is used to obtain wear leveling entropy and free block contamination degree. The write amplification monitoring module monitors the ratio change of flash controller and host interface in real time. The historical interference identification module removes garbage collection interference. The performance comparison output module performs multi-dimensional comparison to achieve refined evaluation.

Benefits of technology

It enables quantitative characterization of the initial state of solid-state drives, ensuring that performance data is collected under steady-state conditions, improving the accuracy and reliability of evaluation results, and providing refined performance judgment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122309315A_ABST
    Figure CN122309315A_ABST
Patent Text Reader

Abstract

This invention belongs to the field of solid-state drive (SSD) performance evaluation technology, specifically a SSD storage performance evaluation system. It acquires the wear leveling entropy and free block contamination degree of the tested SSD, analyzes the expected range of performance data through theoretical deduction, applies a preset mixed random read / write load to the tested SSD, constructs a time-series sequence of instantaneous write amplification factor, and locates reclaimed physical blocks based on the sequence fluctuation peaks. When the generation time of valid data within a reclaimed physical block belongs to before the load application, it is determined that the fluctuation peak is caused by garbage collection triggered by historical data, and the current load is maintained until the sequence converges. Finally, it collects the actual performance data of the tested SSD in the converged state, compares it with the expected range, and outputs performance evaluation results that are consistent with expectations, comprehensively better, comprehensively worse, or partially deviate from expectations. Accurate performance determination and objective comparison of SSDs can be achieved through a single test.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of solid-state drive performance evaluation technology, specifically a solid-state drive storage performance evaluation system. Background Technology

[0002] Dirty disk write tests are an important way to evaluate the storage performance of solid-state drives (SSDs). By applying random read and write loads to the SSD while it is not empty, the performance degradation caused by data accumulation in real-world usage scenarios can be simulated, thus more realistically reflecting the performance level of the SSD under real-world conditions.

[0003] Existing technologies typically employ two approaches when performing dirty disk write tests: First, the SSD is initialized to an empty disk state, its baseline performance is recorded, and then sequential or random writes are used to fill the target dirty disk percentage for testing. Second, based directly on the SSD's initial state, a write load is continuously applied to observe performance changes.

[0004] However, the above approach has the following drawbacks in practical applications: On the one hand, the historical data write volume and wear level of solid-state drives vary, resulting in different garbage collection trigger frequencies for different drives with the same dirty disk ratio. The test results are mixed with the randomness of the intrinsic performance of the media and the initial state, making the horizontal comparison lack a fair benchmark. It is often necessary to conduct multiple tests to obtain a relatively reliable conclusion.

[0005] On the other hand, existing technologies only count the amount of data written to the host interface and lack real-time monitoring of write amplification fluctuations caused by garbage collection inside the solid-state drive. As a result, the performance data collected during the test is not obtained under a stable internal state, and the data accuracy is insufficient, which can easily lead to deviations in the judgment of the actual wear and tear pressure and steady-state performance of the solid-state drive. Summary of the Invention

[0006] To overcome the shortcomings of the prior art, embodiments of the present invention provide a storage performance evaluation system for solid-state drives, which can effectively solve the problems involved in the prior art.

[0007] The objective of this invention can be achieved through the following technical solution: a solid-state hard drive storage performance evaluation system, comprising: an initial state parsing module, a write amplification monitoring module, a historical interference identification module, and a performance comparison output module.

[0008] The initial state analysis module is connected to the performance comparison output module, the write amplification monitoring module is connected to the historical interference identification module, and the historical interference identification module is connected to the performance comparison output module.

[0009] The initial state analysis module obtains the wear leveling entropy and free block contamination degree of the tested solid-state drive as initial state features, and analyzes the expected range of the performance data of the tested solid-state drive through theoretical deduction. The performance data includes the number of input / output operations per second and the average latency.

[0010] The write amplification monitoring module applies a preset mixed random read / write load to the solid-state drive under test, monitors the change in the ratio of the physical page programming count of the flash controller to the amount of data written to the host interface in real time, and constructs a timing sequence of instantaneous write amplification factor.

[0011] The historical interference identification module locates the reclaimed physical blocks based on the fluctuation peak of the instantaneous write amplification factor time series. When the generation time of the valid data in the reclaimed physical block belongs to before the load is applied, it determines that the fluctuation peak is caused by garbage collection triggered by historical data, and maintains the current load until the sequence converges.

[0012] The performance comparison output module collects the actual performance data of the tested solid-state drive in the convergence state, compares it with the expected range, and outputs the performance evaluation result of the tested solid-state drive.

[0013] Compared with the prior art, the embodiments of the present invention have at least the following advantages or beneficial effects: (1) The present invention obtains the wear leveling entropy and free block contamination degree of the solid-state drive under test as initial state characteristics, and analyzes the expected performance range that matches the current initial state through theoretical deduction, thereby realizing the quantitative characterization of the initial internal state of the solid-state drive, so that the subsequent test results can be correlated with its initial state, and the performance can be judged whether it matches the current wear level with one test, and a comparable evaluation conclusion can be obtained without multiple tests.

[0014] (2) This invention constructs a time sequence of instantaneous write amplification coefficient by real-time monitoring of the ratio of physical page programming count of flash controller to the amount of data written to host interface, thereby realizing the monitoring of write amplification fluctuations caused by garbage collection inside solid-state drive. It can capture internal pressure changes and ensure that subsequent performance data acquisition is carried out in a steady state after the write amplification fluctuations converge, thus avoiding the problem of inaccurate performance data caused by internal activity interference.

[0015] (3) The present invention locates the physical block to be recycled based on the fluctuation peak of the instantaneous write amplification factor time sequence. When the generation time of the valid data in the recycled physical block belongs to before the load is applied, it is determined that the fluctuation peak is caused by garbage collection caused by historical data, and the load is maintained until the sequence converges. By removing the interference of historical data on the test process, the final collected performance data only reflects the intrinsic performance of the medium, which helps to improve the accuracy and reliability of the test results.

[0016] (4) This invention compares the actual number of input / output operations per second and the actual average latency with the expected range in multiple dimensions. Based on the compliance of the two indicators, it outputs evaluation results that meet expectations, are better than, are worse than or partially deviate from the expected performance, thereby achieving a refined judgment of the solid-state drive performance, making up for the lack of dimensions in the traditional single indicator evaluation, and making the evaluation conclusion more instructive. Attached Figure Description

[0017] The present invention will be further described with reference to the accompanying drawings, but the embodiments in the drawings do not constitute any limitation on the present invention. For those skilled in the art, other drawings can be obtained based on the following drawings without creative effort.

[0018] Figure 1 This is a schematic diagram of the module connection of the present invention.

[0019] Figure 2 This is a logical diagram illustrating the location of the reclaimed physical block based on the fluctuation peak of the instantaneous write amplification factor timing sequence according to the present invention.

[0020] Figure 3 This is a schematic diagram illustrating the output logic of the performance evaluation results of the solid-state drive under test in this invention. Detailed Implementation

[0021] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0022] Reference Figure 1 As shown, the present invention provides a storage performance evaluation system for solid-state drives, including: an initial state parsing module, a write amplification monitoring module, a historical interference identification module, and a performance comparison output module.

[0023] The module connection method is as follows: the initial state parsing module runs independently of the test process and is directly connected to the performance comparison output module; the write amplification monitoring module, the historical interference identification module, and the performance comparison output module are connected in series to form the main processing link of the test data.

[0024] In solid-state drive (SSD) storage performance evaluation, differences in initial internal state are the root cause of inaccurate test results. To address this issue, an initial state analysis module with two components is set up: one acquires the wear leveling entropy and free block contamination degree of the SSD under test as initial state features, enabling a quantitative characterization of the uniformity of wear and the cleanliness of free blocks within the SSD.

[0025] In this embodiment of the invention, the wear leveling entropy is calculated and obtained through the following process: by reading the physical block erase count register maintained by the flash conversion layer, the cumulative number of erases for each physical block of the tested solid-state drive is counted, and the minimum and maximum number of erases are identified to define the erase count range.

[0026] The erase count interval is evenly divided into multiple consecutive sub-intervals based on a preset granularity, and a unique level identifier is assigned to each sub-interval. The preset granularity is a fixed value based on the flash memory media type of the solid-state drive being tested. Specifically, for single-layer cell flash memory media, the fixed granularity is preset to 10 times; for multi-layer cell flash memory media, the fixed granularity is preset to 50 times; and for triple-layer cell flash memory media, the fixed granularity is preset to 100 times.

[0027] Determine the level sub-range to which the cumulative number of erases for each physical block belongs, classify each physical block under the corresponding level label, and count the number of physical blocks falling under each level label.

[0028] The ratio of the number of physical blocks under each level identifier to the total number of physical blocks is used as the probability value corresponding to each level identifier. This value is then substituted into the Shannon information entropy formula for summation to obtain the wear leveling entropy of the tested solid-state drive. The Shannon information entropy formula is existing technology and will not be elaborated upon here.

[0029] In this embodiment of the invention, the free block pollution degree is calculated and obtained through the following process: by scanning the metadata pointers in the free block queue of the solid-state drive under test, the data status of all physical pages currently stored in each free block is identified, and the data status includes valid data pages and invalid data pages.

[0030] The number of physical pages in each free block that are in a valid data state is counted, and then divided by the total physical page capacity of the free block to obtain the valid data residency ratio. The valid data residency ratio is used to characterize the degree of contamination of the free block, which prevents it from being directly allocated and used due to residual valid data.

[0031] The effective data resident ratio of all free blocks is calculated by arithmetic mean, and the result is used as the free block pollution degree of the tested solid-state drive.

[0032] Secondly, based on the acquired initial state characteristics, the expected range of the performance data of the tested solid-state drive is analyzed by theoretical deduction. The performance data includes the number of input / output operations per second and the average latency, so as to provide a benchmark reference that matches the initial state for subsequent performance comparison. Specifically, the inherent physical characteristic parameters of the flash memory medium are read from the device information of the tested solid-state drive, which include at least the total number of parallel units, physical page size (the amount of data corresponding to a single read / write operation), single page programming time, single block erase time, and interface transmission rate.

[0033] Multiply the total number of parallel units by the interface transmission rate to obtain the total aggregate transmission bandwidth. The ratio of the total aggregate transmission bandwidth to the physical page size is used as the theoretical peak number of input / output operations per second.

[0034] Divide the physical page size by the interface transmission rate to obtain the interface transmission time. Use the sum of the single-page programming time and the interface transmission time as the theoretical minimum average latency for a single write operation.

[0035] The wear equalization entropy is normalized to obtain the parallelism loss factor: the ratio of the wear equalization entropy to the maximum possible entropy value is taken as the wear dispersion. The product of the wear dispersion and the total number of parallel units is rounded to obtain the actual number of usable effective parallel units. The ratio of the effective number of parallel units to the total number of parallel units is taken as the parallelism loss factor.

[0036] It should be noted that the maximum possible entropy value mentioned above is the theoretical upper limit of the entropy value that can be achieved when the number of erases of all physical blocks is completely uniformly distributed across the various level sub-intervals, given a given level sub-interval division granularity. The specific value is... , The maximum possible entropy value is used as a normalization benchmark to quantify the degree of deviation of the wear distribution of the current tested solid-state drive from the ideal uniform distribution.

[0037] The free block pollution level is quantified to obtain the pre-write erase penalty factor: the free block capacity occupied by historical data is calculated based on the product of the free block pollution level and the total number of free blocks. The free block capacity occupied by historical data is divided by the capacity of a single physical block to obtain the number of free blocks that need to be erased. The number of free blocks that need to be erased is multiplied by the time taken to erase a single block to obtain the additional latency that each write operation may face. The additional latency is compared with the theoretical minimum latency of a single write operation. The result of this ratio calculation is used as the pre-write erase penalty factor to quantify the degree to which historical data residue amplifies the write latency.

[0038] The product of the theoretical peak number of inputs / outputs per second and the parallelism loss factor is used as the upper limit of the expected number of inputs / outputs per second, and the product of the theoretical minimum average latency and the pre-write erase penalty factor is used as the lower limit of the expected average latency.

[0039] The expected upper limit of input / output operations per second is lowered by a first preset span, and the expected lower limit of average latency is raised by a second preset span, which are respectively used as the expected input / output operations per second range and the expected average latency range. The first preset span and the second preset span are determined based on the actual performance fluctuation of the solid-state drive under test in the convergence state. Specifically, after the instantaneous write amplification factor timing sequence converges, the actual input / output operations per second and the actual average latency are collected within a preset time period to form a steady-state performance fluctuation sample set.

[0040] The coefficients of variation for the actual number of input / output operations per second and the actual average latency within the steady-state performance fluctuation sample set are calculated separately. The coefficient of variation is defined as the ratio of the standard deviation to the mean. The coefficient of variation is used as the quantification value of the main control processing capability fluctuation range under the current test batch. Specifically, the product of the expected upper limit of the number of input / output operations per second and the coefficient of variation of the actual number of input / output operations per second is used as the first preset span, and the product of the expected lower limit of the average latency and the coefficient of variation of the actual average latency is used as the second preset span. These are applied to construct the expected range of the current solid-state drive under test.

[0041] While quantifying the initial internal state of the tested solid-state drive, it is necessary to simulate the read and write pressure under actual usage scenarios to trigger internal garbage collection behavior, thereby observing its write amplification dynamics.

[0042] To this end, the write amplification monitoring module applies a preset mixed random read / write load to the solid-state drive under test. The specific application process includes: performing a full-disk sequential write operation to fill the solid-state drive under test to a preset capacity ratio to build a dirty disk basic environment.

[0043] High-intensity random write commands with a fixed queue depth of 32 and a data block size of 4KB are continuously issued to simulate high-concurrency random access scenarios in real applications.

[0044] During the stress application process, the write amplification monitoring module monitors the change in the ratio of the physical page programming count of the flash controller to the amount of data written to the host interface in real time. By recording the ratio periodically and arranging them sequentially, a time sequence of instantaneous write amplification coefficient is constructed for subsequent historical interference identification and steady-state determination. Specifically, within the load application period, with a preset time step as the sampling window, the total number of write command byte streams issued by the host interface and the number of physical page programming operations actually performed by the flash controller are collected synchronously.

[0045] Multiply the cumulative number of physical page programming operations by the standard capacity of a single physical page to obtain the actual amount of physical data written in the current sampling period.

[0046] Divide the actual physical amount of data written by the total number of write command bytes in the corresponding window to obtain the instantaneous write amplification factor for each sampling window.

[0047] Arrange the instantaneous write amplification coefficients of each sampling window in the order of sampling windows to construct the instantaneous write amplification coefficient time sequence.

[0048] After obtaining the timing sequence of the instantaneous write amplification factor, it is necessary to distinguish whether the fluctuation peaks are caused by regular garbage collection driven by the current load or by additional interference triggered by historical data left over from before the test.

[0049] Therefore, the historical interference identification module locates the reclaimed physical block based on the fluctuation peak of the instantaneous write amplification factor time series. In this embodiment of the invention, this location process specifically refers to... Figure 2 As shown, this includes: sequentially traversing each instant and writing the amplification factor as the target to be inspected.

[0050] If the target under test is greater than the instantaneous write amplification factor of its immediate and adjacent targets, then the target under test is marked as a candidate local maximum.

[0051] The overall statistical mean and overall statistical standard deviation of the instantaneous write amplification factor time series are obtained. The sum of the overall statistical mean and the preset multiple standard deviation is used as the dynamic fluctuation threshold. The preset multiple follows the principle of 3 times the standard deviation.

[0052] Centered on the candidate local maximum, a predetermined number of sampling windows are extended forward and backward to form a local detection period. The predetermined number is determined based on the granularity of the sampling windows and the typical duration of the garbage collection operation, specifically ranging from 2 to 5 sampling windows. For example, when the sampling window is set to 1 second and the predetermined number is 3, the local detection period covers a time range of 7 seconds, 3 seconds before and after the candidate local maximum, which can fully cover the typical write amplification fluctuation cycle caused by a single garbage collection operation.

[0053] Calculate the mean of all instantaneous write amplification coefficients except for candidate local maxima within the local detection period, and label it as the local mean.

[0054] When a candidate local maximum is greater than the dynamic fluctuation threshold, and the difference between the candidate local maximum and the local mean exceeds the overall statistical standard deviation, a fluctuation peak is identified, and the sampling window corresponding to the candidate local maximum is marked as the fluctuation peak occurrence time window. The physical block identifiers selected and erased by the garbage collection operation within this window are queried to locate the collected physical blocks.

[0055] The last write time of the valid data stored in each reclaimed physical block is compared with the start time of the load application. If the proportion of valid data whose last write time is earlier than the start time of the load application exceeds a preset proportion threshold, which is set to 50%, then it is confirmed that the generation time of the valid data in the reclaimed physical block belongs to before the load application. This indicates that the fluctuation peak is caused by garbage collection triggered by historical data, and the current load needs to be maintained until the sequence converges.

[0056] In this embodiment of the invention, the sequence convergence determination process is as follows: a sliding window of fixed length slides sequentially along the time axis of the instantaneous write amplification factor time series. Each sliding window of a sampling step size is used to extract a sliding time period. The window length of the sliding time period is fixed at L sampling windows, and the value of L is determined according to the resolution requirements of the frequency domain analysis, for example, L can be 128, 256, or 512 sampling windows. The sampling step size can be set to one sampling window or a preset number of sampling windows to achieve overlap or continuous coverage between adjacent sliding time periods.

[0057] Perform a Fast Fourier Transform on the sequence data within each sliding time period to obtain the spectral energy distribution.

[0058] The spectrum is divided into low-frequency and high-frequency bands. The low-frequency band corresponds to write amplification fluctuations caused by random read / write loads, while the high-frequency band corresponds to write amplification spikes caused by bursty garbage collection operations. Specifically, the low-frequency band division process involves multiplying the single-block erase time of the tested SSD by the maximum number of physical blocks involved in a single garbage collection operation. This product is used as the theoretical minimum completion time for a single garbage collection operation. The reciprocal of this minimum completion time is then taken to obtain the characteristic frequency. Using the characteristic frequency as the starting reference point for the high-frequency band, frequencies lower than [the specified frequency] will be used to [further details]. The frequency range is defined as the low-frequency band, which is higher than... The frequency range is defined as the high-frequency band.

[0059] Calculate the proportion of high-frequency energy to total spectral energy in each sliding period, and analyze the changing trend of this high-frequency energy proportion. When the high-frequency energy proportion shows a continuous decrease and approaches zero, and the low-frequency energy peak is concentrated at a specific frequency point corresponding to the applied load frequency, the instantaneous write amplification factor timing sequence is determined to converge.

[0060] It should be noted that the specific determination process for the aforementioned high-frequency energy proportion showing a continuous decrease and approaching zero is as follows: For the sequence composed of the high-frequency energy proportions within each sliding time period, perform second derivative calculations, and retrieve the moment when the second derivative first turns from negative to positive, marking it as... This indicates that the rate of decline in the proportion of high-frequency energy has changed from an accelerating decline to a decelerating decline.

[0061] calculate The difference between the maximum and minimum values ​​of the second derivative of the energy proportion in the high-frequency band is denoted as the fluctuation range.

[0062] Comparison Previously, the number of samples for the second derivative of the energy ratio in the high-frequency band was used for calculation, with the same number of samples selected. Then, the sum of the second derivatives of the energy proportion in the high-frequency band is calculated. If this sum is less than the fluctuation range... And from No fluctuations exceeding three times the range of fluctuations were observed at any subsequent second derivative sampling point, indicating that the proportion of high-frequency energy showed a continuous decline and approached zero.

[0063] The specific determination process for the low-frequency energy peak concentration at a specific frequency point corresponding to the applied load frequency is as follows: A matrix is ​​constructed from the low-frequency spectrum data of multiple consecutive sliding time periods, with each row corresponding to the spectrum vector of one time period. Principal component analysis is performed on the matrix to obtain the variance contribution rate of each principal component. The proportion of the variance contribution rate of the first principal component to the total variance is calculated. Simultaneously, the load vector of the first principal component is calculated, and the frequency point with the largest absolute load value is identified. When the proportion of the variance contribution rate of the first principal component to the total variance is greater than 0.9, and the deviation between the maximum load frequency point and the applied load frequency is less than the frequency resolution, the low-frequency energy is determined to be concentrated at a specific frequency point corresponding to the applied load frequency. The frequency resolution is obtained by taking the reciprocal of the product of the number of Fast Fourier Transform points and the sampling window duration.

[0064] It should also be noted that, to prevent the sequence from failing to converge for an extended period due to abnormal conditions of the tested SSD, a maximum waiting time is set. If the cumulative duration of maintaining the load exceeds the maximum waiting time and the sequence still has not converged, the current test process will be forcibly terminated, and a convergence error message will be output.

[0065] After quantifying the internal wear characteristics of the tested SSD through the initial state analysis module, tracking its internal pressure dynamics through the write amplification monitoring module, and removing historical data interference from the testing process through the historical interference identification module, two evaluation criteria have been obtained: one is the expected performance range derived from the initial state characteristics, and the other is the actual performance data collected after the write amplification fluctuations converge. However, neither the expected range nor the actual data alone can directly form an evaluation conclusion; the two must be compared to determine whether the actual performance of the tested SSD matches its current internal state.

[0066] Therefore, the performance comparison output module collects the actual performance data of the tested solid-state drive in the convergence state, compares it with the expected range, and outputs the performance evaluation result of the tested solid-state drive.

[0067] Specific reference Figure 3As shown, it is determined whether the actual number of input / output operations per second falls within the expected range of input / output operations per second, and whether the actual average latency falls within the expected average latency range.

[0068] If both judgments are true, then the output performance meets expectations.

[0069] If the actual number of input / output operations per second is higher than the upper limit of the expected range and the actual average latency is lower than the lower limit of the expected range, then the output performance is better than expected across the board.

[0070] If the actual number of input / output operations per second is lower than the lower limit of the expected range and the actual average latency is higher than the upper limit of the expected range, then the output performance is worse than expected across the board.

[0071] If only one judgment result is yes, the output performance deviates locally from the expectation, and the conforming and deviating items are identified.

[0072] The present invention also includes iterative optimization of the theoretical derivation of the expected range of the performance data of the tested solid-state drive based on the accumulation of measured samples: after each performance test is completed, the initial state characteristics of the tested solid-state drive and the converged actual performance data are stored as measured samples in the same model sample library.

[0073] When the number of samples in the same model sample library reaches the statistically effective capacity, the statistically effective capacity refers to the minimum number of samples that can meet the accuracy requirements of multiple regression analysis. It is usually determined according to the degree of freedom requirements of regression analysis. For example, the number of samples should be at least 10 times greater than the number of input features. The wear equilibrium entropy and free block contamination degree of all samples in the sample library are used as input features, and the corresponding number of input / output times per second and average delay are used as output targets for multiple regression analysis. Specifically, a system of multiple linear regression equations is fitted, the least squares method is used to estimate the parameters of the system of equations, and the coefficient combination that minimizes the sum of squared residuals is solved to obtain the regression coefficient matrix.

[0074] The regression coefficients corresponding to the wear equilibrium entropy in the regression coefficient matrix are compared with the rate of change of the parallelism loss factor on the wear equilibrium entropy in the theoretical derivation, and the correction coefficient of the parallelism loss factor is extracted.

[0075] The regression coefficient corresponding to the free block pollution degree is compared with the rate of change of the free block pollution degree by the pre-write erase penalty factor in the theoretical derivation, and the correction coefficient of the pre-write erase penalty factor is extracted.

[0076] The correction coefficients obtained from the multivariate regression analysis are substituted into the calculation logic of the parallelism loss factor and the write-before-erase penalty factor.

[0077] Taking the parallelism loss factor as an example, let , ,in The rate of change of the parallelism loss factor with respect to the wear equilibrium entropy in the theoretical derivation. This is the original theoretical calculation value of the parallelism loss factor. This represents the mean wear leveling entropy of all solid-state drives of the same model in the sample library. This represents the normalized equivalent rate of change of the effect of wear equilibrium entropy on the theoretical peak input / output frequency per second in the measured data. These are the regression coefficients corresponding to the wear equilibrium entropy in the multiple regression analysis. This represents the theoretical peak number of input / output cycles per second.

[0078] Will and The ratio is used as a correction coefficient for the parallelism loss factor. This is used to correct the parallelism loss factor obtained in subsequent calculations. The correction formula is as follows: .

[0079] In the formula, This is the corrected parallelism loss factor. This represents the wear leveling entropy of the currently tested solid-state drive. This represents the deviation of the wear leveling entropy of the currently tested solid-state drive from the sample mean. This represents the adjustment range of the current solid-state drive being tested.

[0080] This formula aims to adjust the theoretical value proportionally for each newly tested solid-state drive based on the degree of deviation between its wear leveling entropy and the sample mean, combined with a correction coefficient. This ensures that the expected performance range retains the physical basis of the theoretical derivation while incorporating the statistical regularity of the measured data.

[0081] Furthermore, the correction method for the write-before-erase penalty factor is logically consistent with the correction method for the parallelism loss factor, and will not be repeated here.

[0082] For subsequent tests of the same model of solid-state drive, the expected upper limit of input / output per second and the expected lower limit of average latency were re-obtained using calculation logic corrected by actual test data, forming a dynamically updated expected performance range.

[0083] The above description is merely an example and illustration of the structure of the present invention. Those skilled in the art can make various modifications or additions to the specific embodiments described, or use similar methods to replace them, as long as they do not deviate from the structure of the invention or exceed the scope defined by the present invention, they should all fall within the protection scope of the present invention.

Claims

1. A storage performance evaluation system for solid-state drives, characterized in that, include: The initial state analysis module obtains the wear leveling entropy and free block contamination degree of the tested solid-state drive as initial state features, and analyzes the expected range of the performance data of the tested solid-state drive through theoretical deduction. The performance data includes the number of input / output operations per second and the average latency. The write amplification monitoring module applies a preset mixed random read / write load to the solid-state drive under test, monitors the change in the ratio of the physical page programming count of the flash controller to the amount of data written to the host interface in real time, and constructs a timing sequence of instantaneous write amplification coefficient. The historical interference identification module locates the reclaimed physical blocks based on the fluctuation peak of the instantaneous write amplification factor time series. When the generation time of the valid data in the reclaimed physical block belongs to before the load is applied, it is determined that the fluctuation peak is caused by garbage collection triggered by historical data, and the current load is maintained until the sequence converges. The performance comparison output module collects the actual performance data of the tested solid-state drive in the convergence state, compares it with the expected range, and outputs the performance evaluation result of the tested solid-state drive.

2. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The wear leveling entropy is calculated through the following process: The cumulative number of erases for each physical block of the tested solid-state drive is counted, and the minimum and maximum number of erases are identified to define the erase count range. The erase count interval is evenly divided into multiple consecutive level sub-intervals according to the preset granularity, and a unique level identifier is assigned to each level sub-interval. Determine the level sub-range to which the cumulative number of erases for each physical block belongs, classify each physical block under the corresponding level label, and count the number of physical blocks falling under each level label; The ratio of the number of physical blocks under each level to the total number of physical blocks is used as the probability value corresponding to each level. This value is then substituted into the Shannon information entropy formula for summation to obtain the wear leveling entropy of the tested solid-state drive.

3. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The contamination level of the free block is calculated through the following process: By scanning the metadata pointers in the free block queue of the tested solid-state drive, the data status of all physical pages currently stored in each free block is identified, including valid data pages and invalid data pages. The effective data resident ratio is obtained by counting the number of physical pages in the valid data state within each free block and dividing it by the total physical page capacity of the free block. The effective data resident ratio of all free blocks is calculated by arithmetic mean, and the result is used as the free block pollution degree of the tested solid-state drive.

4. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The expected range of the tested solid-state drive performance data, analyzed through theoretical deduction, includes: Based on the inherent physical characteristics parameters, obtain the theoretical peak input / output times per second and the theoretical minimum average latency of the flash memory medium of the tested solid-state drive. The wear leveling entropy is normalized to obtain the parallelism loss factor, and the free block contamination degree is quantified to obtain the pre-write erase penalty factor. The product of the theoretical peak number of inputs and outputs per second and the parallelism loss factor is used as the upper limit of the expected number of inputs and outputs per second, and the product of the theoretical minimum average latency and the pre-write erase penalty factor is used as the lower limit of the expected average latency. The expected upper limit of input / output times per second is floated downward by a preset span, and the expected lower limit of average latency is floated upward by a preset span, which are respectively used as the expected input / output times per second range and the expected average latency range.

5. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The construction of the instantaneous write amplification factor time series includes: During the load application period, the total number of write command byte streams issued by the host interface and the number of physical page programming operations actually performed by the flash controller are collected synchronously with a preset time step as the sampling window. Multiply the cumulative number of physical page programming operations by the standard capacity of a single physical page to obtain the actual amount of physical data written in the current sampling period; Divide the actual physical amount of data written by the total number of write command bytes in the corresponding window to obtain the instantaneous write amplification factor for each sampling window; Arrange the instantaneous write amplification coefficients of each sampling window in the order of sampling windows to construct a time sequence of instantaneous write amplification coefficients.

6. The solid-state drive storage performance evaluation system according to claim 5, characterized in that, The process of locating the reclaimed physical block based on the fluctuation peak of the instantaneous write amplification factor time series includes: Write the amplification factor as the target to be inspected at each instant in sequence; If the target under test is greater than the instantaneous write amplification factor of its immediate front and rear neighbors at the same time, then the target under test is marked as a candidate local maximum. Obtain the overall statistical mean and overall statistical standard deviation of the instantaneous write amplification factor time series, and use the sum of the overall statistical mean and the preset multiple standard deviation as the dynamic fluctuation threshold; Centered on the candidate local maximum, a predetermined number of sampling windows are extended forward and backward to form a local detection period. The mean of all instantaneous write amplification coefficients, excluding the candidate local maximum, is calculated within the local detection period and marked as the local mean. When a candidate local maximum is greater than the dynamic fluctuation threshold, and the difference between the candidate local maximum and the local mean exceeds the overall statistical standard deviation, a fluctuation peak is identified, and the sampling window corresponding to the candidate local maximum is marked as the fluctuation peak occurrence time window. The physical block identifiers selected and erased by the garbage collection operation within this window are queried to locate the collected physical blocks.

7. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The generation time of valid data within the reclaimed physical block is attributed to the determination process prior to load application as follows: The last write time of the valid data stored in each reclaimed physical block is compared with the start time of the load application. If the proportion of valid data whose last write time is earlier than the start time of the load application exceeds a preset threshold, then the generation time of the valid data in the reclaimed physical block is confirmed to belong to the period before the load application.

8. The solid-state drive storage performance evaluation system according to claim 1, characterized in that, The process for determining sequence convergence is as follows: The instantaneous write amplification factor time series is extracted to form a sliding time period, and the sequence data in each sliding time period is subjected to a fast Fourier transform to obtain the spectral energy distribution. The spectrum is divided into low-frequency bands and high-frequency bands. The low-frequency bands correspond to write amplification fluctuations caused by random read / write loads, and the high-frequency bands correspond to write amplification spikes caused by sudden garbage collection operations. Calculate the proportion of high-frequency energy to total spectral energy in each sliding period, and analyze the changing trend of this high-frequency energy proportion. When the high-frequency energy proportion shows a continuous decrease and approaches zero, and the low-frequency energy peak is concentrated at a specific frequency point corresponding to the applied load frequency, the instantaneous write amplification factor timing sequence is determined to converge.

9. The solid-state drive storage performance evaluation system according to claim 4, characterized in that, The output of the performance evaluation results of the tested solid-state drive includes: Determine whether the actual number of input / output operations per second falls within the expected range and whether the actual average latency falls within the expected average latency range. If both judgments are true, then the output performance meets expectations; If the actual number of input / output operations per second is higher than the upper limit of the expected range and the actual average latency is lower than the lower limit of the expected range, then the output performance is better than expected in all aspects. If the actual number of input / output operations per second is lower than the lower limit of the expected range and the actual average latency is higher than the upper limit of the expected range, then the output performance is worse than expected across the board. If only one judgment result is yes, the output performance deviates locally from the expectation, and the conforming and deviating items are identified.

10. The solid-state drive storage performance evaluation system according to claim 4, characterized in that, This also includes iterative optimization of the theoretical derivation of the expected range of the performance data of the tested solid-state drives based on the accumulation of actual test samples: After each performance test is completed, the initial state characteristics of the tested solid-state drive and the actual performance data after convergence are stored as test samples in the same model sample library. When the number of samples in the same model sample library reaches the statistically effective capacity, multivariate regression analysis is performed with the wear equilibrium entropy and free block contamination degree of all samples in the sample library as input features, and the corresponding number of input / output times per second and average delay as output targets. Substitute the correction coefficients obtained from the multivariate regression analysis into the calculation logic of the parallelism loss factor and the write-before-erase penalty factor; For subsequent tests of the same model of solid-state drive, the expected upper limit of input / output per second and the expected lower limit of average latency were re-obtained using calculation logic corrected by actual test data, forming a dynamically updated expected performance range.