Now showing1 - 10 of 10
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Multi-objective memory allocation-based code optimizations for real-time systems
    The thesis proposes compiler-level multi-objective memory allocation-based optimizations to simultaneously optimize the program’s worst-case execution time, energy consumption, and code size. It introduces multi-objective static memory allocation that optimizes multiple objectives. The thesis tackles compilation time bottlenecks caused while solving the multi-objective static allocation problem by introducing approximation models that approximate optimization objectives and search space reduction techniques. The thesis proposes a novel multi-objective dynamic memory allocation technique to circumvent the small scratchpad memory size constraint on the static allocation problem. The thesis introduces Direct Memory Access (DMA)- and compression-awareness to the multi-objective dynamic allocation problem, which tackles the high dynamic allocation-based worst-case execution time, energy, and code size costs.
    Publicationtype: Doctoral Thesis
      62  18
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Compiler-level DMA-aware multi-objective dynamic SPM allocation
    (Springer, 2025-04-09) ;
    Real-time embedded systems need to meet timing and energy constraints to avoid potential disasters. Compiler-level ScratchPad Memory (SPM) allocation can be used to optimize a program’s Worst-Case Execution Time (WCET) and energy consumption. However, static allocation is limited by SPM size constraints. Dynamic SPM allocation resolves this by allocating code to SPM during runtime, but copying code using the CPU increases WCET and energy consumption. To address this, we integrate a Direct Memory Access (DMA) model and DMA analysis at the compiler level and propose a single-objective DMA Call Placement Optimization (DCPO). In this paper, we consider functions and loops as dynamic allocation candidates. DCPO finds appropriate places within the code to place DMA transfer calls such that the DMA controller and the CPU run parallelly—minimizing the total execution time required by the DMA controller for dynamic allocation of functions and loops during runtime. Additionally, we propose a compiler-level DMA-aware multi-objective dynamic SPM allocation that uses DCPO and simultaneously minimizes WCET and energy objectives, yielding Pareto optimal solutions. Comparative evaluations demonstrate the superiority of our approach over state-of-the-art multi- and single-objective optimizations.
    Publicationtype: Journal Article
      14  8
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Efficient and effective multi-objective optimization for real-time multi-task systems
    (Schloss Dagstuhl - Leibniz-Zentrum für Informatik GmbH, Dagstuhl Publishing, 2023-07-26) ;
    Embedded real-time multi-task systems must often not only comply with timing constraints but also need to meet energy requirements. However, optimizing energy consumption might lead to higher Worst-Case Execution Time (WCET), leading to an un-schedulable system, as frequently executed code can easily differ from timing-critical code. To handle such an impasse in this paper, we formulate a Metaheuristic Algorithm-based Multi-objective Optimization (MAMO) for multi-task real-time systems. But, performing multiple WCET, energy, and schedulability analyses to solve a MAMO poses a bottleneck concerning compilation times. Therefore, we propose two novel approaches - Path-based Constraint Approach (PCA) and Impact-based Constraint Approach (ICA) - to reduce the solution search space size and to cope with this problem. Evaluations showed that PCA and ICA reduced compilation times by 85.31% and 77.31%, on average, over MAMO. For all the task sets, out of all solutions found by ICA-FPA, on average, 88.89% were on the final Pareto front.
    Publicationtype: Conference Paper
      22  85
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Towards multi-objective dynamic SPM allocation
    (Schloss Dagstuhl - Leibniz-Zentrum für Informatik GmbH, Dagstuhl Publishing, 2023-07-26) ;
    Most real-time embedded systems are required to fulfill timing constraints while adhering to a limited energy budget. Small ScratchPad Memory (SPM) poses a common hardware constraint on embedded systems. Static SPM allocation techniques are limited by the SPM's stringent size constraint, which is why this paper proposes a Dynamic SPM Allocation (DSA) model at the compiler level for the dynamic allocation of a program to SPM during runtime. To minimize Worst-Case Execution Time (WCET) and energy objectives, we propose a multi-objective DSA-based optimization. Static SPM allocations might inherently use SPM sub-optimally, while all proposed DSA optimizations are only single-objective. Therefore, this paper is the first step towards a DSA that trades WCET and energy objectives simultaneously. Even with extra DSA overheads, our approach provides better quality solutions than the state-of-the-art multi-objective static SPM allocation and ILP-based single-objective DSA approach.
    Publicationtype: Conference Paper
      18  20
  • Some of the metrics are blocked by your 
    Item type:Publication,
    The TeamPlay Project: Analysing and optimising time, energy, and security for Cyber-Physical Systems
    (IEEE, 2023)
    Rouxel, Benjamin
    ;
    Brown, Christopher
    ;
    ; ;
    Non-functional properties, such as energy, time, and security (ETS) are becoming increasingly important in Cyber-Physical Systems (CPS) programming. This article describes TeamPlay, a research project funded under the EU Horizon 2020 programme between January 2018 and June 2021. TeamPlay aimed to provide the system designer with a toolchain for developing embedded applications where ETS properties are first-class citizens, allowing the developer to reflect directly on energy, time and security properties at the source code level. In this paper we give an overview of the TeamPlay methodology, introduce the challenges and solutions of our approach and summarise the results achieved. Overall, applying our TeamPlay methodology led to an improvement of up to 18% performance and 52% energy usage over traditional approaches.
    Publicationtype: Conference Paper
      17
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Approximating WCET and energy consumption for fast multi-objective memory allocation
    Worst-Case Execution Time (WCET) is the most important design criterion in the domain of hard real-time systems. Most embedded systems also need to satisfy additional design criteria like, e.g., energy consumption. Performing WCET and energy analyses statically at compile-time can be time-consuming. Consequently, minimizing WCET and energy consumption of the code at the compiler level using multi-objective optimization can be a time-consuming process. In this paper, we propose an approximation model to quickly approximate the WCET and energy consumption of the code at compile-time. Instead of using traditional WCET and energy analyses, we exploit this approximation model to perform ScratchPad Memory (SPM) allocation-based multi-objective optimization. Furthermore, we solve the multi-objective optimization problem using metaheuristic algorithms and explore the trade-offs between WCET and energy consumption. Using the proposed approximation model, we achieved, on average, a 94.12% reduction in compilation time and maintained the quality of the Pareto optimal solutions while performing the multi-objective optimization. Furthermore, the approximation error while using the proposed approximation model was in an acceptable range of 2% - 4% on average.
    Publicationtype: Research Report
    Scopus© Citations 2  70  291
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Compilation for real-time systems a decade after predator
    On the occasion of Peter Marwedel’s 70th anniversary, this article provides a survey over a decade of research in the field of compiler techniques for real-time systems. Ten years ago, during the EU-funded project Predator, it was him who led the work package on compilers. As will be shown in this survey, the work done in this domain had such a fundamental character that it laid the ground for follow-up research that lasts since the end of Predator until today. This article particularly emphasizes results achieved in the challenging areas of scheduling-aware optimization of multi-task systems, of analysis and optimization of Multi-Processor Systems on Chip, and of predictable multi-objective optimizations.
    Publicationtype: Book Part
      225  296
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Reasoning about non-functional properties using compiler intrinsic function annotations
    Embedded systems often need to adhere to time and energy constraints. With the increasing popularity of embedded systems, the interest in evaluating and optimizing non-functional properties like execution time and energy of these systems is increasing. In this paper, we describe a Resource-usage Estimate Expression Language (REEL), which allows the user to argue about these properties, within the source code, in a compiler understandable manner. Furthermore, we discuss the integration of REEL within a compiler framework. We also show the propagation of REEL annotations within the compiler, and how they can be exploited to make decisions based on the non-functional properties within the source code. Finally, we explore REEL's potential to perform ILP-based optimizations.
    Publicationtype: Research Report
      368  197
  • Some of the metrics are blocked by your 
    Item type:Publication, Access status: with files ,
    Multi-objective optimization for the compiler of real-time systems based on flower pollination algorithm
    Real-time systems usually face stringent constraints such as execution time, energy consumption, code-size etc. Performing multi-objective optimization at compile time is one way to find approximations over the possible solutions which fulfill these constraints. Flower pollination algorithm (FPA) is a relatively recently proposed metaheuristic algorithm which makes use of the evolutionary characteristics of flower pollination process to find solutions to an optimization problem. In this paper, we propose a theoretical framework for an extension for the WCET-Aware C Compiler (WCC) framework for performing multi-objective optimizations based on the FPA during compile time.
    Publicationtype: Conference Paper
    Scopus© Citations 6  453  593
  • Some of the metrics are blocked by your 
    Item type:Publication,
    Distributed Approach to Dynamic Quantization for Multi-Agent Systems
    We propose a distributed approach to dynamic quantization for discrete time multi-agent systems with local memory storage at each agent. The usual assumption of a common memory storage is relaxed and the zooming-in/zooming-out strategy is based on a scaling factor which is additionally communicated. We use the notion of small lp signal lp stability to prove the effectiveness of our approach and provide a bound on the quantization error.
    Publicationtype: Conference Paper
      152