Eager Stack Cache Memory Transfers

Authors Amine Naji, Florian Brandner

Thumbnail PDF


  • Filesize: 469 kB
  • 11 pages

Document Identifiers

Author Details

Amine Naji
Florian Brandner

Cite AsGet BibTex

Amine Naji and Florian Brandner. Eager Stack Cache Memory Transfers. In 16th International Workshop on Worst-Case Execution Time Analysis (WCET 2016). Open Access Series in Informatics (OASIcs), Volume 55, pp. 5:1-5:11, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2016)


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 imedivision-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.
  • Predictability
  • Eager Memory Transfers
  • Stack Cache
  • Real-Time Systems
  • Prefetching
  • Eager Eviction


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. S. Abbaspour, F. Brandner, A. Naji, and M. Jan. Efficient context switching for the stack cache: Implementation and analysis. In Proc. of the Int'l Conf. on Real Time and Networks Systems, RTNS'15, pages 119-128. ACM, 2015. URL: http://dx.doi.org/10.1145/2834848.2834861.
  2. S. Abbaspour, F. Brandner, and M. Schoeberl. A time-predictable stack cache. In Proc. of the Workshop on Software Technologies for Embedded and Ubiquitous Systems. 2013. Google Scholar
  3. S. Abbaspour, A. Jordan, and F. Brandner. Lazy spilling for a time-predictable stack cache: Implementation and analysis. In Proc. of the Workshop on Worst-Case Execution Time Analysis, volume 39 of OASICS, pages 83-92, 2014. Google Scholar
  4. J. Garside and N. C. Audsley. WCET preserving hardware prefetch for many-core real-time systems. In Proc. of the Int'l Conf. on Real-Time Networks and Systems, RTNS'14. ACM, 2014. URL: http://dx.doi.org/10.1145/2659787.2659824.
  5. M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge, and R. B. Brown. MiBench: A free, commercially representative embedded benchmark suite. In Proc. of the Workshop on Workload Characterization, WWC'01, 2001. Google Scholar
  6. A. Jordan, F. Brandner, and M. Schoeberl. Static analysis of worst-case stack cache behavior. In Proc. of the Conf. on Real-Time Networks and Systems, RTNS'13, pages 55-64, 2013. URL: http://dx.doi.org/10.1145/2516821.2516828.
  7. N. P. Jouppi. Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers. In Proc. of the Int'l Symp. on Computer Architecture, ISCA'90, pages 364-373. ACM, 1990. URL: http://dx.doi.org/10.1145/325164.325162.
  8. H.-H. S. Lee, G. S. Tyson, and M. K. Farrens. Eager writeback - a technique for improving bandwidth utilization. In Proc. of the Int'l Symp. on Microarchitecture, MICRO 33, pages 11-21. ACM, 2000. URL: http://dx.doi.org/10.1145/360128.360132.
  9. D. A. Patterson and J. L. Hennessy. Computer Organization &Design: The Hardware/Software Interface. Morgan Kaufmann, 4rd edition, 2012. Google Scholar
  10. J. Reineke, I. Liu, H. D. Patel, S. Kim, and E. A. Lee. PRET DRAM controller: Bank privatization for predictability and temporal isolation. In Proc. of the Conf. on Hardware/Software Codesign and System Synthesis, pages 99-108, 2011. Google Scholar
  11. C. Rochange, S. Uhrig, and P. Sainrat. Time-Predictable Architectures. Wiley, 2014. URL: http://dx.doi.org/10.1002/9781118790229.
  12. M. Schoeberl, P. Schleuniger, W. Puffitsch, F. Brandner, C. W. Probst, S. Karlsson, and T. Thorn. Towards a time-predictable dual-issue microprocessor: the Patmos approach. In Bringing Theory to Practice: Predictability and Performance in Embedded Systems, DATE Workshop PPES 2011, March 18, 2011, Grenoble, France, volume 18, pages 11-21. OASICS, 2011. URL: http://dx.doi.org/10.4230/OASIcs.PPES.2011.11.
  13. A. J. Smith. Cache memories. ACM Comput. Surv., 14(3):473-530, September 1982. URL: http://dx.doi.org/10.1145/356887.356892.
  14. V. Suhendra, T. Mitra, A. Roychoudhury, and T. Chen. WCET centric data allocation to scratchpad memory. In Proc. of the Int'l Real-Time Systems Symp., RTSS'05, pages 223-232. IEEE, 2005. URL: http://dx.doi.org/10.1109/RTSS.2005.45.
  15. R. Wilhelm, D. Grund, J. Reineke, M. Schlickling, M. Pister, and C. Ferdinand. Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems. Trans. Comp.-Aided Des. Integ. Cir. Sys., 28(7):966-978, 2009. Google Scholar
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail