Back to Search
Start Over
An extensible framework for software configuration optimization on heterogeneous computing systems: Time and energy case study
- Source :
- Information and Software Technology. 105:30-42
- Publication Year :
- 2019
- Publisher :
- Elsevier BV, 2019.
-
Abstract
- Context: Application of component based software engineering methods to heterogeneous computing (HC) enables different software configurations to realize the same function with different non–functional properties (NFP). Finding the best software configuration with respect to multiple NFPs is a non–trivial task. Objective: We propose a Software Component Allocation Framework (SCAF) with the goal to acquire a (sub–) optimal software configuration with respect to multiple NFPs, thus providing performance prediction of a software configuration in its early design phase. We focus on the software configuration optimization for the average energy consumption and average execution time. Method: We validated SCAF through its instantiation on a real–world demonstrator and a simulation. Firstly, we verified the correctness of our model through comparing the performance prediction of six software configurations to the actual performance, obtained through extensive measurements with a confidence interval of 95%. Secondly, to demonstrate how SCAF scales up, we performed software configuration optimization on 55 generated use–cases (with solution spaces ranging from 1030 to 3070) and benchmark the results against best performing random configurations. Results: The performance of a configuration as predicted by our framework matched the configuration implemented and measured on a real–world platform. Furthermore, by applying the genetic algorithm and simulated annealing to the weight function given in SCAF, we obtain sub–optimal software configurations differing in performance at most 7% and 13% from the optimal configuration (respectfully). Conclusion: SCAF is capable of correctly describing a HC platform and reliably predict the performance of software configuration in the early design phase. Automated in the form of an Eclipse plugin, SCAF allows software architects to model architectural constraints and preferences, acting as a multi–criterion software architecture decision support system. In addition to said, we also point out several interesting research directions, to further investigate and improve our approach.
- Subjects :
- Computer science
business.industry
020207 software engineering
Symmetric multiprocessor system
02 engineering and technology
Extensibility
Computer Science Applications
Software
Computer engineering
Component-based software engineering
0202 electrical engineering, electronic engineering, information engineering
Performance prediction
Benchmark (computing)
020201 artificial intelligence & image processing
cyber–physical systems
software components
power consumption
execution time
robot experiment
heterogeneous computing
component based software
Software architecture
business
Information Systems
Software configuration management
Subjects
Details
- ISSN :
- 09505849
- Volume :
- 105
- Database :
- OpenAIRE
- Journal :
- Information and Software Technology
- Accession number :
- edsair.doi.dedup.....7c8ae13feeed9bfeebb0dd7f064e5d9c
- Full Text :
- https://doi.org/10.1016/j.infsof.2018.08.003