SLIDE 1
Low Contention Mapping of Real-Time Tasks onto a TilePro 64 Core Processor
Christopher Zimmer and Frank Mueller North Carolina State University, Raleigh, NC 27695-8206, mueller@cs.ncsu.edu
Abstract
Predictability of task execution is paramount for real-time systems so that upper bounds of execution times can be determined via static timing analysis. Static timing analysis
- n network-on-chip (NoC) processors may result in unsafe
underestimations when the underlying communication paths are not considered. This stems from contention on the underlying network when data from multiple sources share parts of a routing path in the NoC. Contention analysis must be performed to provide safe and reliable bounds. In addition, the overhead incurred by contention due to inter- process communication (IPC) can be reduced by mapping tasks to cores in such a way that contention is minimized. This paper makes several contributions to increase pre- dictability of real-time tasks on NoC architectures. First, we contribute a constraint solver that exhaustively maps real- time tasks onto cores to minimize contention and improve
- predictability. Second, we develop a novel TDMA-like ap-
proach to map communication traces into time frames to ensure separation of analysis for temporally disjoint com-
- munication. Third, we contribute a novel multi-heuristic ap-
proximation, HSolver, for rapid discovery of low contention
- solutions. HSolver reduces contention by up to 70% when
compared with na¨ ıve and constrained exhaustive solutions. We evaluate our experiments using a micro-benchmark of task system IPC on the TilePro64, a real, physical NoC processor with 64 cores. To the best of our knowledge, this is the first work to consider IPC for worst-case time frames to simplify analysis and to measure the impact on actual hardware for NoC-based real-time multicore systems.
- 1. Introduction
Distributed software models on network-on-chip (NoC) processor architectures provide significant advancements but also challenges for real-time systems. These advancements come from simplifications in processor cores that result in increased accuracy of static timing analysis, simplified scheduling algorithms due to an abundance of cores, and synchronization free data resource models implemented through explicit inter-process communication (IPC) in the form of messages. Due to these advancements, this processor architecture is seeing increased use in hard real-time systems such as in [24] where the authors explore real-time hazard
This work was supported in part by NSF grants CNS-0720496 and CNS- 0905181
Figure 1. NoC Contention (Config 1) detection in satellites using the Opera Maestro proces- sor [10], a radiation hardened TilePro with 49 cores devel-
- ped by Boeing. A drawback of these processors is posed
by NoC contention of multiple tasks. Such contention exists for shared-memory accesses, for off-chip memory references and for message passing when utilizing distributed software models instead of shared memory. Our work focuses on message passing over the NoC assuming separate NoC interconnects for memory, coherence, I/O and messaging [3]. Other work on increasing predictability and coping with non- uniform memory latencies is orthogonal [4]. Message-based communication over the NoC has been shown to increase scalability compared to shared-memory programming [7]. We conjecture that it can also assist in increasing predictability by decreasing contention as it is easier to analyze messages statically than shared memory references [21]. Even under message passing, poor task- to-core mappings can result in a loss of predictability due to latencies incurred through NoC contention. Consider a mesh NoC with full-duplex links, i.e., two messages traveling in opposite directions over a link do not result in contention, that utilizes static dimension-ordered worm- hole routing favoring horizontal routing before vertical [3]. Consider the example “Config 1” in Figure 1 of nine cores with a mesh NoC. Two messages are sent, one from core 4 → 2 and the other from 3 → 8, as depicted by the lines with arrows. When sent at the same time, contention
- n the link 4 → 5 (depicted as a thick link in the NoC
mesh) results in a delay for one of these messages due to arbitration within the NoC hardware routers. (Packets are not interleaved as an open virtual channel monopolize links between endpoints.) As a result, sending tasks experience highly variable latencies. Such variability can be reduced
- r even eliminated when tasks are layed out intelligently to