Browsing by Author "Becker, Steffen (Prof. Dr.-Ing.)"
Now showing 1 - 2 of 2
- Results Per Page
- Sort Options
Item Open Access Model-based performance prediction for concurrent software on multicore architectures - a simulation-based approach(2021) Frank, Markus; Becker, Steffen (Prof. Dr.-Ing.)Model-based performance prediction is a well-known concept to ensure the quality of software. Thereby, software architects create abstract architectural models and specify software behaviour, hardware characteristics, and the user's interaction. They enrich the models with performance-relevant characteristics and use performance models to solve the models or simulate the software behaviour. Doing so, software architects can predict quality attributes such as the system's response time. Thus, they can detect violations of service-level objectives already early during design time, and alter the software design until it meets the requirements. Current state-of-the-art tools like Palladio have proven useful for over a decade now, and provide accurate performance prediction not only for sophisticated, but also for distributed cloud systems. They are built upon the assumption of single-core CPU architectures, and consider only the clock rate as a single metric for CPU performance. However, current processor architectures have multiple cores and a more complex design. Therefore, the use of a single-metric model leads to inaccurate performance predictions for parallel applications in multicore systems. In the course of this thesis, we face the challenges for model-based performance predictions which arise from multicore processors, and present multiple strategies to extend performance prediction models. In detail, we (1) discuss the use of multicore CPU simulators used by CPU vendors; (2) conduct an extensive experiment to understand the effect of performance-influencing factors on the performance of parallel software; (3) research multi-metric models to reflect the characteristics of multicore CPUs better, and finally, (4) investigate the capabilities of software modelling languages to express massively parallel behaviour. As a contribution of this work, we show that (1) multicore CPU simulators simulate the behaviour of CPUs in detail and accurately. However, when using architectural models as input, the simulation results are very inaccurate. (2) Due to extensive experiments, we present a set of performance curves that reflect the behaviour of characteristic demand types. We included the performance curves into Palladio and have increased the performance predictions significantly. (3) We present an enhanced multi-metric hardware model, which reflects the memory architecture of modern multicore CPUs. (4) We provide a parallel architectural pattern catalogue, which includes four of the most common parallelisation patterns (i.e., parallel loops, pipes and filter, fork/join, master worker). Through this catalogue, we enable the software architect to model the parallel behaviour of software faster and with fewer errors.Item Open Access Understanding behavior of third-party components through explanation and configurable mapping models(2024) Hakamian, Alireza; Becker, Steffen (Prof. Dr.-Ing.)Most of the code executed in modern software systems is developed and maintained outside the organization. Understanding whether or not third-party components behave as intended requires expertise, which is rare and costly. Behavioral conformance checking (BCC) aims to identify deviations and conformances between system design and implementation by establishing relations between elements of design and implementation models. This dissertation aims to assist application designers in (1) simplifying BCC for different third-party components and (2) understanding the behavior of third-party components. Our method aligns more with design science methodology that aims to address research questions by developing and evaluating IT artifacts.