Options
Compiler-level DMA-aware multi-objective dynamic SPM allocation
Citation Link: https://doi.org/10.15480/882.15104
Publikationstyp
Journal Article
Date Issued
2025-04-09
Sprache
English
TORE-DOI
Journal
Citation
Real-Time Systems (in Press): (2025)
Publisher DOI
Scopus ID
Publisher
Springer
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.
Subjects
DMA | Dynamic SPM allocation | Embedded systems | ILP | Metaheuristic algorithms | Multi-objective optimization
DDC Class
004: Computer Sciences
621.3: Electrical Engineering, Electronic Engineering
Publication version
publishedVersion
Loading...
Name
s11241-025-09436-w.pdf
Size
3.72 MB
Format
Adobe PDF