AI Application Guard for Critical Process Resource Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing monitoring approaches in information processing systems are ineffective in managing resource usage across different priority processes within an application, leading to performance concerns where low-priority processes can impact high-priority ones, and general file de-allocation methods are reactive and affect critical processes.
Innovation Solution
An AI-based system that assigns criticality levels to application functionalities, collects resource usage data, predicts resource requirements, and takes proactive measures such as de-allocating memory, terminating low-priority processes, and ensuring high-priority processes have resources available during peak times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If existing monitoring tools are used to monitor memory and CPU usage throughout the system, then system-wide resource usage is tracked, but critical processes can be impacted by low-priority processes consuming resources
Solution Approach 1:
The system segments processes by criticality levels (critical, high, medium, low) and applies different resource management policies to each segment. The AI model analyzes resource usage patterns separately for each criticality level and takes targeted actions to protect critical processes while allowing flexibility for lower-priority processes.
Solution Approach 2:
The system dynamically changes resource allocation parameters based on predicted future resource needs and current criticality levels. The AI model adjusts memory allocation, CPU scheduling, and process termination decisions in real-time based on changing system conditions and predicted peak usage times.
2Reliability
If general file de-allocation services are used to remove temporary files and de-allocate memory, then overall system memory and CPU usage is reduced, but critical processes may be affected by the same de-allocation actions
Solution Approach 1:
The system applies different de-allocation strategies to different processes based on their criticality level. Critical processes receive protective quality (their temporary files are preserved and memory is maintained), while non-critical processes receive aggressive de-allocation. The AI model identifies which processes can safely have their temporary files removed without impacting critical functionality.
Solution Approach 2:
The AI model performs preliminary analysis of resource usage patterns to predict future resource needs before de-allocation occurs. By anticipating peak usage times and critical process requirements, the system proactively preserves necessary resources and only de-allocates from processes that will not need them, preventing the need for later resource reallocation.
3Reliability
If reactive file deletion is used to deal with memory and CPU usage, then temporary files are removed after consumption occurs, but performance issues have already impacted critical processes
Solution Approach 1:
The AI model performs preliminary analysis of resource usage patterns to predict future resource needs before resource exhaustion occurs. By anticipating peak usage times and identifying processes that will consume excessive resources, the system takes preventive actions (such as terminating low-priority processes or de-allocating their temporary files) before they can impact critical process performance.
Solution Approach 2:
The system continuously monitors resource usage and feeds this information back to the AI model, which adjusts its predictions and actions in real-time. The feedback loop enables the system to learn from past resource consumption patterns and improve its predictive accuracy, allowing increasingly timely preventive actions that prevent performance degradation before it occurs.
Data Source
AI summary
Techniques for safe guarding of functionalities of a computer program in an information processing system are disclosed. For example, a method comprises the following steps. A plurality of criticality levels is obtained for a plurality of functionalities of a computer program configured to execute on a computer system, wherein the computer system comprises one or more resources usable to execute the computer program. Data is collected for the plurality of functionalities of the computer program. Usage of the one or more resources for executing the plurality of functionalities of the computer program for a given set of data is predicted. Execution of a portion of the plurality of functionalities of the computer program is ensured based on the predicted usage of the one or more resources and the criticality level for each of the plurality of functionalities.


