Hardware Reference
In-Depth Information
The remainder of this Chapter is organized as follows. Section
5.2
overviews the
state-of-the-art on RRM for embedded multi-core platforms and details RRM prob-
lem tackled in this Chapter. Section
5.3
formulates the RRM problem. Section
5.4
presents the exploration tool flow to solve this RRM problem. Conclusions are drawn
in Sect.
5.5
.
5.2
Run-Time Resource Management in Embedded Systems
This section introduces state-of-the-art techniques on RRM and places our method-
ology in comparison to previous literature.
In the context of Run-time Resource Management (RRM), traditional approaches
can be roughly classified into either pure design-time approaches or pure run-time
approaches. Nevertheless, they suffer from the following drawbacks:
First, some of them are applicable only for single-core platforms [
32
], or for
homogeneous multi-core platforms [
42
], but not for heterogeneous multi-core
platforms.
Second, none of the existing approaches proposes a complete framework. They
are based only on task scheduling, i.e., on task ordering and assignment. A good
overview of available design-time algorithms can be found in [
28
]. Some others
are based only on slowing or shutting down the platform resources [
5
] and on
Dynamic Voltage and Frequency Scaling (DVFS) [
9
,
14
,
19
,
27
].
Third, the objective of the majority of these approaches is performance opti-
mization [
3
,
6
,
8
,
15
,
18
], and not together with power consumption optimiza-
tion.
Finally, design-time approaches involve slow heuristics [
27
,
29
,
30
] using Integer
Linear Programming (ILP) and cannot be used at run time. On the other hand, to
reach a lightweight implementation, run-time approaches hide the specification
of the internal application tasks, and they do not fully exploit the task mapping
choices of the target platform. Hence these approaches are sub-optimal.
Hence neither the existing pure design-time approaches nor the existing pure run-time
approaches are efficient to solve this complex RRM problem. To alleviate the run-
time decision making and to avoid worst-case assumptions, new research directions
are ongoing and propose a mixed design-time and run-time approach:
The Task Concurrency Management (TCM) methodology [
34
-
36
], explores the
energy-performance trade-offs at the system level. To reach an efficient usage of
the platform resources, this methodology models the application at a finer granu-
larity than traditional task graphs. It identifies the sub-tasks of the application that
can run in parallel on a heterogeneous multi-processor platform. It also includes
data access and memory management at the task level [
20
,
39
].
Scenario-based approaches [
12
,
23
], which are based on the concept of application
scenarios identified at design time, operate as follows. First, a profiling-based
analysis of various run-time situations of the application is performed. Then,
Search WWH ::
Custom Search