1. Improving Performance of Single-Path Code through a Time-Predictable Memory Hierarchy
- Author
-
Bekim Cilku, Wolfgang Puffitsch, Peter Puschner, Martin Schoeberl, and Daniel Prokesch
- Subjects
010302 applied physics ,Hardware_MEMORYSTRUCTURES ,Speedup ,Memory hierarchy ,Dead code ,Computer science ,business.industry ,Process (computing) ,Speculative execution ,02 engineering and technology ,Parallel computing ,01 natural sciences ,020202 computer hardware & architecture ,Worst-case execution time ,Time-predictable memory hierarchy ,Embedded system ,0103 physical sciences ,0202 electrical engineering, electronic engineering, information engineering ,Code generation ,Cache ,business ,prefetching ,single-path code - Abstract
Deriving the Worst-Case Execution Time (WCET) of a task is a challenging process, especially for processor architectures that use caches, out-of-order pipelines, and speculative execution. Despite existing contributions to WCET analysis for these complex architectures, there are open problems. The single-path code generation overcomes these problems by generating time-predictable code that has a single execution trace. However, the simplicity of this approach comes at the cost of longer execution times. This paper addresses performance improvements for single-path code. We propose a time-predictable memory hierarchy with a prefetcher that exploits the predictability of execution traces in single-path code to speed up code execution. The new memory hierarchy reduces both the cache-miss penalty time and the cache-miss rate on the instruction cache. The benefit of the approach is demonstrated through benchmarks that are executed on an FPGA implementation.
- Published
- 2017
- Full Text
- View/download PDF