Академический Документы
Профессиональный Документы
Культура Документы
Abstract — As IoT (Internet-of-things) technologies grow Meanwhile, it was recently analyzed that the power
rapidly for emerging applications such as smart living and health consumption of memory subsystems is getting reached to
care, reducing power consumption in battery-based IoT devices almost 40 % of the total power consumption in mobile systems
becomes an important issue. An IoT device is a kind of real-time due to the appearance of memory-intensive applications and
systems, of which power-savings have been widely studied in increased DRAM capacities [1]. Such tremendous power
terms of processor’s dynamic voltage/frequency scaling. consumption results mainly from the refresh operation of
However, recent research has shown that memory subsystems DRAM [2]. As DRAM is a volatile medium, it requires
areG getting reached to a significant portion of power continuous power recharge in order to retain its data even in
consumption in such systems. In this paper, we show that power
idle states.
consumption of real-time systems can be further reduced by
combining voltage/frequency scaling with task allocation in Recently, non-volatile memory technologies have emerged
hybrid memory. If a task set is schedulable in a low voltage mode as an attempt of saving the power consumption in memory
of a processor, we can expect that the task set will still be subsystems [2]. Non-volatile memory such as PCM (phase-
schedulable even with slow memory. By considering this, we change memory) or STT-MRAM (Spin Transfer Torque
adopt non-volatile memory technologies that consume less power Magnetic RAM) stores data without refresh operations because
than DRAM but provide relatively slow access latency. Our aim of its non-volatile characteristics. Non-volatile memory has
is to allocate tasks in non-volatile memory if it does not violate strong merits in low-power consumption, but it also has some
the deadline constraint of real-time tasks, thereby reducing the
weaknesses as a main memory medium; its access time is
power consumption of the system further. To do so, we
incorporate the memory allocation problem into the problem
relatively slower than DRAM and it usually has limited write
model of processor’s voltage scaling, and evaluate the endurance cycles. For example, PCM is 1-5x and 5-25x slower
effectiveness of the combined approach. than DRAM in read and write operations, respectively, and it
has the limited endurance of 106 to 108. Although non-volatile
Keywords — dynamic voltage scaling; hybrid memory; internet- memory is not appropriate for the sole memory medium of a
of-things (IoT); non-volatile memory; real-time task scheduling system, it can be used as an auxiliary memory likely to be used
along with DRAM for the purpose of power-saving [2], [3].
I. INTRODUCTION Another important technique that can be utilized for power-
Due to the recent advances in mobile networks, embedded savings in IoT devices is dynamic voltage scaling. With an
systems, and sensor technologies, IoT (Internet-of-things) incredibly enhanced performance of processors during the last
grows rapidly in various application domains such as health a few decades, dynamic voltage/frequency scaling techniques
care, smart living, national defense, and safety management. have been widely used in real-time task scheduling [4], [5], [6],
IoT is an emerging spotlighted technology that enables the
connection of sensor-attached embedded systems such as TABLE 1. MEMORY ACCESS LATENCIES AND POWER CONSUMPTION
wearable devices, smartphones, or mobile appliances through
wired/wireless networks. IoT devices can be considered as DRAM PCM
independent systems with separate functions, but they also Read latency 50 (ns) 100 (ns)
collect various physical data from sensors and transfer them to
Write latency 50 (ns) 350 (ns)
other IoT devices and/or cloud servers. Thus, they should
satisfy the deadline constraints of legacy real-time systems, and Read energy 0.1 (nJ/bit) 0.2 (nJ/bit)
also fulfill the low-power consumption requirement due to Write energy 0.1 (nJ/bit) 1.0 (nJ/bit)
battery-based power supplies.
Idle power 1 (W/GB) 0.1 (W/GB)
442
reclaimed cycles for lowering the voltage when a task does not Meanwhile, it is known that EDF (Earliest Deadline First)
spend its full worst case execution time. Look-ahead voltage is an optimal scheduling algorithm in real-time task scheduling
scaling lowers the voltage further by determining future [20], [21]. Optimality here implies that no other algorithm can
computation requirements and deferring the execution of the schedule a task set if we cannot find a feasible schedule for that
task in accordance. task set with EDF. Based on this, EDF is used as a default real-
time task scheduling algorithm in this paper. Note that EDF
Ghor and Aggoune aim at finding the least energy voltage schedules a task with the closest deadline first in the task set.
schedule for real-time tasks using dynamic voltage scaling [5].
To reduce processor energy, a slack-based method is used, The schedulability of a real-time task set Γ can be tested by
which stretches the task execution time whose length is the utilization U of a processor as follows.
identified through off-line computing and schedules as late as
Ci
possible without missing deadlines. U = ¦i =1
n
≤1 (1)
Ti
Lee et al. also use slack times to lower the processor’s
voltage/frequency [6]. In their scheduling, voltage setting If a processor is executed in a low-power mode, the worst case
assigned to each task at initial time is dynamically switched execution time Ci of a task τi will be adjusted accordingly, and
upon reclaiming the unused clock cycle when a task completes thus the processor’s utilization U needs to be tested with the
the execution ahead of the worst case execution time. new Ci values. We extend our model to redefine the worst case
execution time of a task by considering the memory types of
Lin et al. point out that there is a memory mapping problem tasks allocated. That is, as the access latency of non-volatile
caused by different worst case execution time as heterogeneous memory is longer than that of DRAM, a task allocated to non-
memory types are used [8]. They use dynamic programming volatile memory will need more time to be executed. Our
and greedy approximation for solving memory allocation extended model redefines the worst case execution time of a
problems without violating deadline constraints. task whose memory access time depends on different memory
Zhang et al. propose task scheduling and allocation types as well as the delays that occur due to the processor’s
schemes for hybrid memory architectures to save energy voltage scaling. Accordingly, a task set Γ is divided into two
consumption without violating deadline constraints [19]. In subsets of ΓL, a subset of tasks allocated to non-volatile
their scheme, tasks are allocated one by one to non-volatile memory, and ΓD, a subset of tasks allocated to DRAM, such
memory and the schedulability of the task set is checked. This that Γ = ΓL * ΓD, which are determined by the memory types
procedure is repeated until all tasks are examined. They also each task assigned. The worst case execution time of tasks in
use the reclaimed slack time for the ready tasks to be executed each subset is redefined appropriately.
partially on low power non-volatile memory.
By considering some common assumptions used in previous
studies [6], we maintain five assumptions for our system model.
III. COMBINING PROCESSOR VOLTAGE SCALING AND MEMORY
TASK ALLOCATION A1. The size of DRAM is large enough to accommodate entire
task sets, but the power is turned off for the part of DRAM
A. System Model the tasks are not allocated to.
Let Γ = { τ1, τ2, …, τn} be the set of n independent tasks in A2. Once a task is allocated to either DRAM or non-volatile
a real-time system, which has a processor capable of dynamic memory, it is not allowed for the task to migrate between
voltage/frequency scaling, and main memory consisting of the two memory types during its execution.
DRAM and non-volatile memory. Each task τi is characterized
by a tuple <Ci, Ti, Mi> where Ci is the worst case execution of A3. Each task is executed independently and does not affect
τi, Ti is the period of τi, and Mi is the memory footprint of τi . In other tasks.
our task model, each period of a task implicitly represents the
A4. Context switch overhead, i.e. overhead of switching a
deadline of the task.
processor from one task to another, and voltage switching
A processor is assumed to be operated at two different overhead, i.e. overhead of switching a processor between a
voltage modes: default mode and low-power mode. Suppose low-power mode and the default mode, are negligible.
that the voltage values of the default mode and the low-power
mode are VD and VL, respectively. Then, the corresponding A5. Frequency of a processor is set to an appropriate level as
clock frequency for these two modes can be defined as fD and fL, the voltage supply is adjusted.
respectively, such that fD > fL.
B. Dynamic Voltage Scaling in Real-Time Task Scheduling
When a processor operates in a low-power mode, the
execution time becomes longer than in the default mode due to In general, offline scheduling is possible for a real-time
the lowered clock frequency. Nevertheless, it would spend less task set released periodically. For example, let us see the
power as the power consumption is proportional to the square scheduling results with EDF for the task set listed in Table 2.
of the supplied voltage. As the worst case execution time of a The schedulability of the task set is tested by calculating the
task is defined based on the default mode of a processor, it will utilization of the tasks τ1, τ2, and τ3, and adding up them i.e., U
be lengthened to (fD / fL) ⋅ Ci when the processor changes its = 2/8 + 1/10 + 1/14 = 0.421. As the total utilization is less than
state to a low-power mode. 1, the task set is schedulable under the EDF algorithm. Figure 1
shows the scheduling result for the task set given in Table 2
443
TABLE 2. AN lXAMPLE OF A TASK SET
DRAM
controller
Worst case
Memory
Task Period
memory
Memory
Cache
execution time
τ1 2 8 CPU bus
Non-volatile
τ2 1 10
memory
τ3 1 14
444
160
DVS-HMEM DVS HMEM ORIGINAL
140
50
DVS-HMEM DVS HMEM ORIGINAL
45
Power consumption (mW)
40
35
30
25
20
15
10
5
0
1 2 3 4 5 6 7 8 9 10 AVG
Task set
scaling, similarly save a substantial amount of processor’s maximized by executing a task in a processor’s low-power
power consumption. HMEM and ORIGINAL, which do not mode when the task is allocated on slow non-volatile memory.
use voltage scaling, show relatively higher energy consumption
Figure 5 shows the total energy consumption of the system
than DVS and DVS-HMEM, although the gap becomes small
by adding up the consumed energy in processor and memory.
in some cases like task set 10. In particular, processor’s voltage
As shown in the figure, DVS-HMEM saves the energy
scaling is less effective as the task set’s load approaches the
consumption of ORIGINAL, DVS, and HMEM, respectively,
full capacity of a processor. This is because the chance of
by 36%, 18%, and 28% on average. Figure 6 shows how the
utilizing idle periods of a processor becomes difficult by
processor’s utilization changes as we use dynamic voltage
voltage scaling in such cases. Note that the load of a task set
scaling, hybrid memory allocation, and combining the two
becomes heavy as the task set number increases in our cases.
techniques. As we see, the proposed DVS-HMEM shows the
Figure 4(b) shows the power consumption in memory for highest processor utilization in all cases, and the utilization is
the four techniques as the task sets are varied. As shown in the close to 100% in some cases.
figure, DVS-HMEM and HMEM, which use non-volatile
memory along with DRAM for task allocation, consume V. CONCLUSION
significantly less energy than DVS and ORIGINAL that only
use DRAM. This is because idle power of non-volatile memory In this paper, we showed that the power consumption of
is close to zero, and thus the reduced size of DRAM used due real-time embedded systems can be reduced by combining
to adopting non-volatile memory significantly saves the refresh processor’s voltage/frequency scaling techniques with task
power of DRAM. allocation in hybrid memory. This is based on the synergy
effect of the processor’s voltage scaling and the hybrid
However, as the access latency of non-volatile memory is memory allocation. That is, if a task set is schedulable in the
longer than that of DRAM, executing a task in non-volatile low-power mode of a processor, it is still likely to be
memory may increase the execution time in the processor, schedulable even though we use slow memory for that task set.
possibly leading to increased processor’s power consumption. By considering this, we adopt non-volatile memory
However, as shown in Figure 4(a), such a phenomenon technologies that consume less power than DRAM but provide
happens only in HMEM and it disappears in DVS-HMEM that relatively slow access latency. Specifically, we incorporate the
uses processor voltage scaling along with non-volatile memory memory allocation problem into the problem model of the
allocation. processor voltage scaling, and evaluate the effectiveness of the
When comparing the results of DVS and DVS-HMEM, we combined approach. Experimental results have shown that the
can see that adopting non-volatile memory does not increase proposed technique reduces the power consumption of real-
the processor’s power consumption if the processor adopts time systems by 36% on average.
dynamic voltage scaling. This is because power-savings can be
445
200
DVS-HMEM DVS HMEM ORIGINAL
120.0
DVS-HMEM DVS HMEM ORIGINAL
100.0
80.0
Utilization (%)
60.0
40.0
20.0
0.0
1 2 3 4 5 6 7 8 9 10 AVG
Task set
446