Artigo Revisado por pares

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

ISSN

1873-6165

Autores

Luis Aparicio, Juan Segarra, Clemente Rodríguez, Víctor Viñals,

Tópico(s)

Parallel Computing and Optimization Techniques

Resumo

In 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)