Improving the WCET computation in the presence of a lockable instruction cache in multitasking real-time systems
2010; Elsevier BV; Volume: 57; Issue: 7 Linguagem: Inglês
10.1016/j.sysarc.2010.08.008
ISSN1873-6165
AutoresLuis Aparicio, Juan Segarra, Clemente Rodríguez, Víctor Viñals,
Tópico(s)Parallel Computing and Optimization Techniques
ResumoIn multitasking real-time systems it is required to compute the WCET of each task and also the effects of interferences between tasks in the worst case. This is very complex with variable latency hardware, such as instruction cache memories, or, to a lesser extent, the line buffers usually found in the fetch path of commercial processors. Some methods disable cache replacement so that it is easier to model the cache behavior. The difficulty in these cache-locking methods lies in obtaining a good selection of the memory lines to be locked into cache. In this paper, we propose an ILP-based method to select the best lines to be loaded and locked into the instruction cache at each context switch (dynamic locking), taking into account both intra-task and inter-task interferences, and we compare it with static locking. Our results show that, without cache, the spatial locality captured by a line buffer doubles the performance of the processor. When adding a lockable instruction cache, dynamic locking systems are schedulable with a cache size between 12.5% and 50% of the cache size required by static locking. Additionally, the computation time of our analysis method is not dependent on the number of possible paths in the task. This allows us to analyze large codes in a relatively short time (100 KB with 1065 paths in less than 3 min).
Referência(s)