On the Influence of Shared Memory Contention in Real-Time Multicore Applications
Resumo
The continuous evolution of processor technology has allowed the utilization of multicore architectures in the embedded system domain. A major part of embedded systems, however, are inherently real-time (soft and hard) and the use of multicores in this domain is not straightforward due to their unpredictability in bounding worst-case execution scenarios. One of the main factors for unpredictability is the coherence through memory hierarchy. This paper characterizes the influence of contention for shared data memory in the context of embedded real-time applications. By using a benchmark, we have measured the impact of excessive shared memory invalidations on five processors with three different cache-coherence protocols (MESI, MOESI, and MESIF) and two memory organizations (UMA and ccNUMA). Results have shown that the execution time of an application is affected by the contention for shared memory (up to 3.8 times slower). We also provide an analysis on Hardware Performance Counters (HPCs) and propose to use them in order to monitor and detect excessive memory invalidations at run-time.
Palavras-chave:
Real-time systems, Instruction sets, Hardware, Multicore processing, Protocols, Message systems, Benchmark testing, cache coherence, contention for shared memory, real-time multicore systems, hardware performance counters
Publicado
03/11/2014
Como Citar
GRACIOLI, Giovani; FRÖHLICH, Antônio Auguto.
On the Influence of Shared Memory Contention in Real-Time Multicore Applications. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SISTEMAS COMPUTACIONAIS (SBESC), 4. , 2014, Manaus/AM.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2014
.
p. 25-30.
ISSN 2237-5430.
