ML Module for Host Request Processing in Storage Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for determining whether to process host requests in a storage controller do not adequately consider various factors that impact system resource usage, leading to potential overloading of system resources.

Innovation Solution

A machine learning module is trained to analyze input information related to running tasks, mail queue messages, and host requests to produce output indicating whether to process a host request, with continuous retraining based on measured and optimum system resource usage to optimize processor usage and mail queue depth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a processing node uses simple available task count to determine whether to accept host requests, then the decision process is fast and simple, but system resource usage may become unoptimized leading to overloading

Engineering Contradiction:
Improverequest acceptance decision processVSAvoidsystem resource management
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The machine learning module continuously receives feedback about system resource usage (processor usage, mail queue depth, running tasks) and adjusts its predictions accordingly. This feedback loop enables the system to learn from past performance and optimize resource allocation decisions over time, resolving the contradiction between simple decision-making and reliable resource management

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The machine learning module performs preliminary analysis of multiple system parameters before a host request is accepted. By pre-evaluating factors such as current processor usage, mail queue depth, and running task counts, the system makes more informed decisions about request acceptance, preventing resource overloading before it occurs

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a processing node accepts all host requests without advanced analysis, then system productivity is maximized, but system resources may become overloaded

Engineering Contradiction:
Improvehost request processing volumeVSAvoidsystem resource stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The machine learning module performs a partial analysis of system state by selectively evaluating key parameters (processor usage, mail queue depth, running tasks) rather than examining every possible factor. This partial action approach maintains high processing throughput while still providing sufficient predictive accuracy to prevent resource overloading

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The machine learning module acts as an intermediary between incoming host requests and the processing node resources. It mediates the decision-making process by predicting resource usage patterns and recommending whether to accept or reject requests, thereby protecting system resources from overloading while maintaining high productivity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If a machine learning module is trained with multiple system parameters, then prediction accuracy improves, but computational complexity and training time increase

Engineering Contradiction:
Improveresource usage prediction accuracyVSAvoidmachine learning module complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The machine learning module focuses on changing and optimizing a specific set of key parameters (processor usage percentage, mail queue message count, running task count) rather than analyzing all possible system variables. This selective parameter approach maintains prediction accuracy while controlling model complexity and training requirements

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12124969B2Determining whether to process a host request by training a machine learning module
Publication Date: 2024.10.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12124969B2 patent drawing
  • US12124969B2 patent drawing
  • US12124969B2 patent drawing

AI summary

Provided are a computer program product, system, and method for determining whether to process a host request by training a machine learning module. A machine learning module receives input information related to at least one of running tasks, mail queue messages related to host request processing, I/O request processing, and a host request received from a host system and produces output for the host request indicating whether to process the host request. A determination is made of output produced from the machine learning module based on the input information for a received host request. A determination is made of an expected output based on a measured system resource usage and an optimum system resource usage. The machine learning module is retrained with the input information, the output produced from the machine learning module, and the expected output and provided to determine whether to process a received host request.