Worst-case execution time analysis-driven object cache design

Benedikt Huber, Wolfgang Puffitsch, Martin Schoeberl

    Research output: Contribution to journalJournal articleResearchpeer-review

    400 Downloads (Pure)


    Hard real‐time systems need a time‐predictable computing platform to enable static worst‐case execution time (WCET) analysis. All performance‐enhancing features need to be WCET analyzable. However, standard data caches containing heap‐allocated data are very hard to analyze statically. In this paper we explore a new object cache design, which is driven by the capabilities of static WCET analysis. Simulations of standard benchmarks estimating the expected average case performance usually drive computer architecture design. The design decisions derived from this methodology do not necessarily result in a WCET analysis‐friendly design. Aiming for a time‐predictable design, we therefore propose to employ WCET analysis techniques for the design space exploration of processor architectures. We evaluated different object cache configurations using static analysis techniques. The number of field accesses that can be statically classified as hits is considerable. The analyzed number of cache miss cycles is 3–46% of the access cycles needed without a cache, which agrees with trends obtained using simulations. Standard data caches perform comparably well in the average case, but accesses to heap data result in overly pessimistic WCET estimations. We therefore believe that an early architecture exploration by means of static timing analysis techniques helps to identify configurations suitable for hard real‐time systems.
    Original languageEnglish
    JournalConcurrency and Computation: Practice & Experience
    Issue number8
    Pages (from-to)753-771
    Publication statusPublished - 2012


    • Real-time systems
    • Data cache
    • Worst-case execution time analysis
    • Time-predictable computer architecture


    Dive into the research topics of 'Worst-case execution time analysis-driven object cache design'. Together they form a unique fingerprint.

    Cite this