2013/12/09 yun-chung yang partitioning and allocation of scratch-pad memory for priority-based...

Post on 05-Jan-2016

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Paper Presentation

2013/12/09 Yun-Chung Yang

Partitioning and Allocation of Scratch-Pad Memory for

Priority-Based Preemptive Multi-Task Systems

Takase, H. ; Tomiyama, H. ; Takada, H. Design, Automation & Test in Europe Conference & Exhibition (DATE), 2010Page(s): 1124 - 1129

2

Abstract Related Work What’s the Problem Proposed Method Experiment Result Conclusion

Outline

3

Scratch-pad memory has been employed as a partial or entire replacement for cache memory due to its better energy efficiency. In this paper, we propose scratch-pad memory management techniques for priority-based preemptive multi-task systems. Our techniques are applicable to a real-time environment. The three methods which we propose, i.e., spatial, temporal, and hybrid methods, bring about effective usage of the scratch-pad memory space, and achieve energy reduction in the instruction memory subsystems.

Abstract

4

We formulate each method as an integer programming problem that simultaneously determines (1) partitioning of scratch-pad memory space for the tasks, and (2) allocation of program code to scratch-pad memory space for each task. It is remarkable that periods and priorities of tasks are considered in the formulas. Additionally, we implement a RTOS-hardware cooperative support mechanism for a runtime code allocation to the scratch-pad memory space. We have made the experiments with the fully functional real-time operating system. The experimental results with four task sets have demonstrated the effectiveness of our techniques. Up to 73 % energy reduction compared to a standard method was achieved.

Abstract(cont.)

5

Related Work

Code Allocation

Using Algorithm

[2], [3], [5]

For multi-taskSingle Task

Manage content of

SPM

[4], [6] [8], [9]

This paper

[7] [10], [11], [12]

[2] various size[3] compiler[5] data-cache conflicts

Allocation using integer programming depends on energy

Not for hard real-time system

Hardware for efficient allocation at runtime

Cache is one of the most energy-components in SoC. SPM attracts attention with better energy efficient than

cache.

The previous idea of SPM allocation Based on soft real-time system.

Solution : Propose a SPM allocation for hard real-time.

What’s the Problem

Three method for SPM partition and code allocation. Each method is formulated as an integer programming problem. Spatial

。Each task has exclusive space

Temporal。Running task has the entire SPM space

Hybrid。Spatial idea, the higher priority of task can temporally use the

space of lower priority task.

Proposed Method

8

Framework Overview

Profiler using instruction-level simulator (SkyEye).

Modify to the Kernel scheduler for SPM support.

9

Spatial Method

Xi,j denotes a binary variable, 1 => funci,j allocate to SPM.

fetchi,j total number of instruction in funci,j per execution.

Hyperperiod – The LCM of task period.

Compute energy consumption for each task

SPM allocation

10

Temporal Method

Compute Energy consumption!

11

Hybrid Method

Spatial

Temporal

Priority

Energy consumption Total execution time

Before Experiment

13

Experiment Result

14

Energy reduction

Hybrid & Temporal reduced more energy than Spatial Effective code replacement, no more than 5%

overhead.

Set A has different program characteristic. Mostly automotive program => processing

straightforward.

Discussion

Maximum Average

Spatial Method 33% 18%

Temporal Method 69% 38%

Hybrid Method 73% 41%

15

Proposed three method Spatial, temporal, hybrid

Remarkable for task period and priorities are utilized.

Dynamic code allocation for RTOS and hardware.

My comment Knowing the future work on improvement.

。SPM size could be a parameter in integer programming problem.

Doesn’t have execution time comparison to original.

Conclusion & Comment

top related