2018 · 24 citations · 5 references
Software MaintenanceEngineeringComputer ArchitectureSoftware EngineeringEmbedded ApplicationsSource Code RefactoringsSystem MetricEmbedded SystemsSoftware AnalysisSystems EngineeringEnergy ConsumptionSoftware QualitySoftware MeasurementComputer EngineeringComputer ScienceProgram OptimizationPerformance Analysis ToolSoftware DesignCode RefactoringBenchmarking ToolProgram AnalysisSoftware Quality MetricsSoftware TestingRuntime QualitySoftware MetricSystem Performance AnalysisPerformance PortabilitySystem Software
Source code refactorings and transformations are extensively used by embedded system developers to improve the quality of applications, often supported by various open source and proprietary tools. They either aim at improving the design time quality such as the maintainability and reusability of software artifacts, or the runtime quality such as performance and energy efficiency. However, an inherent trade-off between design- and run-time qualities is often present posing challenges to embedded software development. This work is a first step towards the investigation of the impact of transformations for improving the performance and the energy efficiency on software quality metrics and the impact of refactorings for increasing the design time quality on the execution time, the memory and the energy consumption. Based on a set of embedded applications from widely used benchmark suites and typical transformations and refactorings, we identify interrelations and trade-offs between the aforementioned metrics.
5
MiBench: A free, commercially representative embedded benchmark suite
Matthew R. Guthaus, Jeffrey Ringenberg, Daniel Ernst et al. · 2001 · 3.1K citations
Rodinia: A benchmark suite for heterogeneous computing
Shuai Che, Michael Boyer, Jiayuan Meng et al. · 2009 · 3K citations