Eager Stack Cache Memory Transfers - Archive ouverte HAL Access content directly
Conference Papers Year : 2016

Eager Stack Cache Memory Transfers

(1) , (2, 3)
1
2
3

Abstract

The growing complexity of modern computer architectures increasingly complicates the prediction of the run-time behavior of software. For real-time systems, where a safe estimation of the program's worst-case execution time is needed, time-predictable computer architectures promise to resolve this problem. The stack cache, for instance, allows the compiler to efficiently cache a program's stack, while static analysis of its behavior remains easy.

This work introduces an optimization of the stack cache that allows to anticipate memory transfers that might be initiated by future stack cache control instructions. These eager memory transfers thus allow to reduce the average-case latency of those control instructions, very similar to ``prefetching'' techniques known from conventional caches. However, the mechanism proposed here is guaranteed to have no impact on the worst- case execution time estimates computed by static analysis. Measurements on a dual-core platform using the Patmos processor and time-division-multiplexing-based memory arbitration, show that our technique can eliminate up to 62% (7%) of the memory transfers from (respectively to) the stack cache on average over all programs of the MiBench benchmark suite.

Not file

Dates and versions

hal-02287376 , version 1 (13-09-2019)

Identifiers

  • HAL Id : hal-02287376 , version 1

Cite

Naji Amine, Florian Brandner. Eager Stack Cache Memory Transfers. Workshop on Worst-Case Execution Time Analysis, Jul 2016, Toulouse, France. ⟨hal-02287376⟩
49 View
0 Download

Share

Gmail Facebook Twitter LinkedIn More