Automated Parameter Space Evaluation for System Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for evaluating and reconfiguring complex heterogeneous multi-chip systems are inefficient due to reliance on manual methods, limited applicability of dynamic evaluation techniques, and lack of system-independent change-management capabilities, which hinder optimization of system performance and parameter space management.
Innovation Solution
An automated system that defines a parameter space and uses search functions to iteratively select and evaluate parameters, monitoring metrics to optimize system characteristics such as performance, reliability, and power consumption, enabling adaptive reconfiguration and comparison of reconfiguration algorithms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manual testing approaches are used to evaluate software code and system parameters, then human testers can envision possible combinations of actions, but the approach becomes unrealistic given the level of software complexity in present-day applications
Solution Approach 1:
The system enables automated self-evaluation of software code and system parameters through iterative execution and metric collection, eliminating the need for manual testing while handling complex software configurations
Solution Approach 2:
The system systematically varies system parameters and configuration settings through automated iteration, evaluating different parameter combinations to optimize system characteristics without manual intervention
2Extent of automation
If dynamic evaluation techniques are used to provide adaptive change management systems, then the burden of system configuration and maintenance shifts from people to technology, but the techniques become ad hoc approaches with limited applicability
Solution Approach 1:
The system provides a universal automated evaluation framework that can handle multiple types of system configurations, reconfiguration algorithms, and evaluation scenarios through a single platform, enhancing both automation and versatility
Solution Approach 2:
The system dynamically adapts to different system configurations and reconfiguration algorithms through iterative evaluation, allowing automated change management across diverse scenarios while maintaining broad applicability
3Ease of operation
If conventional change management systems encapsulate fixed and predefined sets of reconfiguration algorithms, then the systems provide black-box reconfiguration capabilities, but developers are unable to ascertain the impact of reconfiguring the system on system parameters such as availability, response-time, and throughput
Solution Approach 1:
The system implements feedback mechanisms that monitor and measure the impact of reconfiguration algorithms on system parameters such as availability, response time, and throughput, providing quantifiable cost data to developers while maintaining ease of operation
Solution Approach 2:
The system introduces an intermediary evaluation layer between the reconfiguration algorithms and the system, collecting and analyzing metric data about reconfiguration impacts without complicating the operational interface
4Productivity
If a compiler employing machine learning techniques is used to customize an application for a given computer architecture, then the application can be optimized for system performance and code size, but the compiler may not alter the given source code for optimizing system performance, providing only limited applicability
Solution Approach 1:
The system performs preliminary automated evaluation and optimization of system parameters before final compilation and deployment, identifying optimal configurations that can be applied across different compilation scenarios to enhance both performance and optimization scope
Data Source
AI summary
A method and system for evaluating a system are described. A parameter space comprising one or more parameters corresponding to the system and/or an application executed on the system is defined. Additionally, one or more search functions for selecting a parameter from the parameter space to evaluate a desired characteristic of the system are determined. Further, at least one parameter from the parameter space is selected using the one or more search functions and the application is executed using the selected parameter. Subsequently, the execution of the application is monitored and metrics associated with the application are recorded. The method further includes iteratively selecting another parameter from the parameter space based on the recorded metrics and executing the application using the selected another parameter.


