The storage system uses the system load awareness mechanism. Different scheduling modes are used based on the concurrent load of the system. The scheduling mode remains unchanged in high-concurrency load scenarios (normal mode).
In low-concurrency load scenarios, some CPU cores are reserved for polling. When the thread queue is empty, the system proactively schedules the thread to reduce the latency overhead of the thread to be woken up and improve the performance in low-concurrency load scenarios (low-load mode).
The system checks the load information of the current system every 5 seconds, checks the concurrent information in the last 5 seconds, records the concurrent information of QoS sampling, and summarizes the total concurrent information of each service registration point, determine the load and switch the scheduling mode based on the total number of concurrent sampling records and the IOD service running time ratio in the latest five concurrent samplings.
If the number of concurrent requests is less than the threshold of the low-concurrency load for five consecutive times (the low concurrency threshold is 10 based on the actual performance test case) and the actual service running time of the IOD is less than 60%, the scheduling mode is switched to the low-load scheduling mode.
Dynamically calculate the number of reserved CPUs (initialize 30%) based on the current load and execution ratio and perform polling. If the number of concurrent CPUs is greater than the threshold of low concurrency load for five consecutive times or the actual IOD service running time ratio is greater than 60%, the scheduling mode is switched to normal.
The log information is as follows:

