Dynamic Program Allocation for Parallel Computing Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computer systems configured with multiple computers of varying configurations suffer from inefficiencies in resource utilization, where some hardware resources and communication channels remain unused, leading to suboptimal utilization of parallel computing capabilities.
Innovation Solution
A management apparatus that allocates programs to parallel computer environments based on real-time execution states and resource requirements, dynamically shifting execution environments to optimize resource usage by selecting computers with suitable throughput and communication functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If programs are allocated to parallel computer environments with fixed configurations, then system stability is maintained, but resource utilization efficiency deteriorates due to mismatched throughput requirements
Solution Approach 1:
The patent implements dynamic allocation of programs to parallel computer environments by continuously monitoring execution states and request values. The management apparatus dynamically switches between fixed-configured parallel computers based on real-time throughput requirements, resolving the contradiction between system stability (maintained through controlled switching) and resource utilization efficiency (improved through matched allocation).
Solution Approach 2:
The system changes the allocation parameter from static to dynamic by introducing a management apparatus that monitors request values and execution states. This allows the system to adapt the program-to-computer mapping based on varying throughput requirements, improving resource utilization while maintaining stability through systematic parameter adjustment.
2Adaptability or versatility
If multiple parallel computer environments with different configurations are used, then adaptability to various program requirements is improved, but device complexity increases due to multiple management overheads
Solution Approach 1:
The management apparatus serves multiple functions: it monitors execution states, acquires request values, determines suitable parallel computers, and controls program allocation. This universal management component handles diverse program requirements across multiple parallel computer environments through a single integrated system, improving adaptability while controlling complexity through functional consolidation.
Solution Approach 2:
The management apparatus acts as an intermediary between programs and parallel computer environments. It mediates the allocation process by receiving request values from programs, evaluating execution states, and directing programs to appropriate computers. This intermediary layer simplifies the interaction complexity by providing a centralized coordination point.
3Productivity
If real-time monitoring and dynamic allocation are implemented, then resource utilization efficiency is improved, but device complexity increases due to additional control mechanisms
Solution Approach 1:
The system implements feedback loops where the management apparatus continuously monitors execution states and request values from parallel computer environments. This feedback mechanism enables real-time detection of throughput mismatches and triggers dynamic reallocation decisions, improving resource utilization efficiency while managing complexity through systematic feedback processing.
Solution Approach 2:
Parallel computer environments automatically report their execution states and receive allocation decisions without manual intervention. The management apparatus autonomously processes request values and makes allocation decisions based on monitored data, reducing the need for external control mechanisms and managing complexity through automated self-service operations.
Data Source
AI summary
In the present invention, a management apparatus includes a unit configured to store management information including a throughput of each of a plurality of computers, a unit configured to acquire a request value which includes a throughput that is required for executing a program from a program execution computer to which execution of a program has been assigned among a plurality of computers, a selecting unit configured to select a computer of a throughput compliant with the request value from among a plurality of computers, and a switchover control unit configured to allocate the program allocated to the program execution computer to the selected computer.


