Dynamic Resource Allocation in Disaggregated Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The disaggregated architecture faces inefficiencies in using the resource pool, where resources may not be allocated effectively to servers that need them, and dynamic addition and removal of resources during application execution are not reliably performed.
Innovation Solution
A control program is implemented on a non-transitory computer-readable medium that predicts the completion time of iterative processing based on past iterations, compares it with a user-specified time limit, outputs a checkpoint, and performs configuration changes to the resource pool, allowing for the dynamic addition or removal of resources during application execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If resources are allocated statically in a disaggregated architecture, then device complexity is reduced, but resource pool utilization efficiency deteriorates
Solution Approach 1:
The patent implements dynamic resource allocation by continuously monitoring application execution status and automatically adjusting resource configuration. The system transitions from static to dynamic allocation by detecting when applications need additional resources or can release resources, thereby improving resource pool utilization without significantly increasing complexity.
Solution Approach 2:
The system employs feedback mechanisms by monitoring application execution progress and resource usage metrics, then using this information to make informed decisions about resource allocation. The feedback loop enables the system to adjust resource configuration based on actual demand, resolving the contradiction between simplicity and efficiency.
2Productivity
If resources are dynamically added or removed during application execution, then resource pool utilization efficiency is improved, but reliability deteriorates due to potential execution failures
Solution Approach 1:
The system performs preliminary actions by creating checkpoints before dynamic resource changes. These checkpoints capture the application state in advance, allowing the system to safely modify resource configuration and then restore from checkpoints if issues occur, thereby maintaining reliability while enabling dynamic resource allocation.
Solution Approach 2:
The patent implements beforehand cushioning through checkpoint creation and state preservation mechanisms. By preparing backup states before resource modifications, the system cushions against potential failures, ensuring that reliability is maintained even as dynamic resource allocation improves productivity.
3Productivity
If iterative processing runs to completion without interruption, then productivity is maintained, but loss of time increases due to inability to optimize resources mid-execution
Solution Approach 1:
The system implements periodic action by allowing iterative processing to run for predetermined intervals or complete specified numbers of iterations before pausing for resource reconfiguration. This periodic interruption enables the system to optimize resource allocation without completely halting productivity, balancing continuous execution with optimization opportunities.
Data Source
AI summary
A recording medium stores a program for causing a computer to execute a process including: predicting based on completion time of a certain number of times of iteration obtained from an application that executes iterative processing and a total number of times of iteration, predicted completion time for a case where the iterative processing is executed as many times as the total number of times of iteration; comparing the predicted completion time with a time limit specified by a user; based on a comparison result, causing the application to output a checkpoint, and after execution of the application is stopped, performing a configuration change of resources for an information processing device that is used for execution of the application by using a resource pool; and restarting the application in the information processing device for which the configuration change has been performed, and resuming execution from the output checkpoint.


