Genetic Algorithm Run Parameter Optimization for HPC Applications
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for optimizing run time on high performance computing platforms require extensive human intervention and manual parameter setting, which is time-consuming and often beyond the expertise of users, especially as these systems grow in complexity and scale towards exascale computing.
Innovation Solution
Implementing a 'black box' mechanism using a genetic optimization algorithm that iteratively optimizes run parameters by selecting, recombining, and randomly mutating parameter sets, allowing for automated optimization with minimal human intervention and adapting to the stochastic nature of high performance applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manual parameter setting is used, then optimization accuracy can be achieved, but human intervention time and complexity increase significantly
Solution Approach 1:
The system performs self-optimization by automatically selecting and adjusting run parameters based on historical execution data and genetic algorithms, eliminating the need for manual human intervention while maintaining optimization accuracy
Solution Approach 2:
The system stores associations between parameter sets and run times to create a history, using this feedback loop to iteratively improve parameter selection and achieve optimal performance automatically
2Productivity
If extensive parameter optimization is performed, then run time performance improves, but the complexity of parameter setting increases
Solution Approach 1:
The genetic algorithm automatically explores the parameter space and selects optimal configurations without requiring user expertise or manual intervention, simplifying the interface while maintaining high performance
Solution Approach 2:
The system dynamically adjusts run parameters through genetic algorithms and iterative optimization, automatically navigating complex parameter spaces to find optimal configurations for different workloads
3Extent of automation
If automated optimization is implemented, then human intervention is reduced, but the system requires deep understanding of application behavior
Solution Approach 1:
The system uses feedback from historical execution data to automatically learn and adapt to application behavior patterns, reducing the need for pre-programmed knowledge while maintaining high automation levels
Solution Approach 2:
The system collects and stores execution history data in advance, building a knowledge base that enables automated optimization without requiring deep pre-configured understanding of specific applications
Data Source
AI summary
A method for optimizing the run parameters of a software application on an information processing platform, consisting of iteratively optimizing said parameters on each execution of said application, wherein, for each execution of said application (11),a set of said parameters is determined and a run time of said application with said parameters is determined, and an association between said set and said run time is stored in order to create a history (25); and whereinsaid set is determined by implementing a genetic optimization algorithm comprising a step (21) consisting of selecting two sets of parameters from said history; a step (22) consisting of creating a new set of parameters by recombining said two sets of parameters; and a step (23) of random mutation of said new set of parameters.
