Tuesday, 12 December 2017

Session 4: Software & Performance

Efficient Optimization of Software Performance Models via Parameter-Space Pruning

Authors:

Mirco Tribastone (University of Southampton)

Abstract:

When performance characteristics are taken into account in a software design, models can be used to identify optimal configurations of the system’s parameters. Unfortunately, for realistic scenarios, the cost of the optimization is typically high, leading to computational difficulties in the exploration of large parameter spaces. This paper proposes an approach to provably exact parameter-space pruning for a class of models of large-scale software systems analyzed with fluid techniques, efficient and scalable deterministic approximations of massively parallel stochastic models. We present a result of monotonicity of fluid solutions with respect to the model parameters, and employ it in the context of optimization programs with evolutionary algorithms by discarding candidate configurations a priori, i.e., without ever solving them, whenever they are proven to give lower fitness than other configurations. An extensive numerical validation shows that this approach yields an average twofold runtime speed-up compared to a baseline optimization algorithm that does not exploit monotonicity. Furthermore, we find that the optimal configuration is within a few percent from the true one obtained by stochastic simulation, whose solution is however orders of magnitude more expensive.

DOI: 10.1145/2568088.2568090

Full text: PDF

[#][]

Exploring Synergies between Bottleneck Analysis and Performance Antipatterns

Authors:

Catia Trubiani (University of L'Aquila)
Antinisca Di Marco (University of L'Aquila)
Vittorio Cortellessa (University of L'Aquila)
Nariman Mani (Carleton University)
Dorina Petriu (Carleton University)

Abstract:

The problem of interpreting the results of performance analysis is quite critical, mostly because the analysis results (i.e. mean values, variances, and probability distributions) are hard to transform into feedback for software engineers that allows to remove performance problems. Approaches aimed at identifying and removing the causes of poor performance in software systems commonly fall in two categories: (i) bottleneck analysis, aimed at identifying overloaded software components and/or hardware resources that a?ect the whole system performance, and (ii) performance antipatterns, aimed at detecting and removing common design mistakes that notably induce performance degradation. In this paper, we look for possible synergies between these two categories of approaches in order to empower the performance investigation capabilities. In particular, we aim at showing that the approach combination allows to provide software engineers with broader sets of alternative solutions leading to better performance results. We have explored this research direction in the context of Layered Queueing Network models, and we have considered a case study in the e-commerce domain. After comparing the results achievable with each approach separately, we quantitatively show the benefits of merging bottleneck analysis and performance antipatterns.

DOI: 10.1145/2568088.2568092

Full text: PDF

[#][]

Adaptive Model Learning for Continual Verification of Non-Functional Properties

Authors:

Radu Calinescu (University of York)
Yasmin Rafiq (University of York)
Kenneth Johnson (University of York)
Mehmet Emin Bakır (University of York)

Abstract:

A growing number of business and safety-critical services are delivered by computer systems designed to reconfigure in response to changes in workloads, requirements and internal state. In recent work, we showed how a formal technique called continual verification can be used to ensure that such systems continue to satisfy their reliability and performance requirements as they evolve, and we presented the challenges associated with the new technique. In this paper, we address important instances of two of these challenges, namely the maintenance of up-to-date reliability models and the adoption of continual verification in engineering practice. To address the first challenge, we introduce a new method for learning the parameters of the reliability models from observations of the system behaviour. This method is capable of adapting to variations in the frequency of the available system observations, yielding faster and more accurate learning than existing solutions. To tackle the second challenge, we present a new software engineering tool that enables developers to use our adaptive learning and continual verification in the area of service-based systems, without a formal verification background and with minimal effort.

DOI: 10.1145/2568088.2568094

Full text: PDF

[#][]

Performance Queries for Architecture-Level Performance Models

Authors:

Fabian Gorsler (Karlsruhe Institute of Technology)
Fabian Brosig (Karlsruhe Institute of Technology)
Samuel Kounev (Karlsruhe Institute of Technology)

Abstract:

Over the past few decades, many performance modeling formalisms and prediction techniques for software architectures have been developed in the performance engineering community. However, using a performance model to predict the performance of a software system normally requires extensive experience with the respective modeling formalism and involves a number of complex and time consuming manual steps. In this paper, we propose a generic declarative interface to performance prediction techniques to simplify and automate the process of using architecture-level software performance models for performance analysis. The proposed Descartes Query Language (DQL) is a language to express the demanded performance metrics for prediction as well as the goals and constraints in the specific prediction scenario. It reduces the manual effort and the learning curve when working with performance models by a unified interface independent of the employed modeling formalism. We evaluate the applicability and benefits of the proposed approach in the context of several representative case studies.

DOI: 10.1145/2568088.2568100

Full text: PDF

[#][]