1 / 15

Energy-Efficient Task Scheduling on Multi-Core Systems with DVFS Architecture

This report discusses optimal energy-efficient task scheduling techniques in multi-core systems using per-core dynamic voltage and frequency scaling (DVFS) architecture. It examines both batch and online modes for task scheduling, emphasizing strategies for both interactive and non-interactive tasks. The report highlights the importance of assigning heavier tasks to cores with lower processing costs and presents heuristics for minimizing total cost, addressing potential issues such as task starvation and the impact of task arrival times on scheduling efficiency.

morna
Télécharger la présentation

Energy-Efficient Task Scheduling on Multi-Core Systems with DVFS Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Progress Report 2014/02/12

  2. Previous in IPDPS’14 • Energy-efficient task scheduling on per-core DVFS architecture • Batch mode • Tasks with arrival time = 0. • Mixed mode • interactive + computation + background

  3. Modification in ICPP’14 • Energy-efficient task scheduling on per-core DVFS architecture • Batch mode • Tasks with arrival time = 0. • Mixed mode • interactive + computation + background • Online mode • interactive + non-interactive

  4. Batch Mode • For tasks without deadline • Single core • There exists an optimal solution with the minimum cost in which the tasks are in non-decreasing order of the number of cycles. • Multi-core • A greedy scheduling that assigns heavier tasks to core with smaller C’ j(k’) among all cores gives the minimum cost for a heterogeneous multi-core system. • C’ j(k’) is the coefficient of position k’ on core j.

  5. Online Mode • Assign tasks to cores and decide the processing speeds which minimize the total cost in an online fashion. • Tasks • Can arrive at any time • Interactive tasks • Higher priority. • Finish as soon as possible. • Non-interactive tasks • No deadline constraint.

  6. Heuristic • If the new task is an interactive task • Choose a core, preempt current task, execute this task with highest frequency, resume the preempted task after finishing this task. • If the new task is a non-interactive task • Insert this task into queue

  7. Heuristic(Cont.) • According to the finding in batch mode, we can always rearrange tasks every time a new task arrives to achieve minimal cost. • “Assigns heavier tasks to core with smaller C’ j(k’) among all cores ” • However, there will be extra computation costs and migration costs.

  8. Least Extra Cost • Instead of rearrange every task, we assign the new task to one specific core. • Choose the core with the least extra cost incurred by inserting this task. • “There exists an optimal solution with the minimum cost in which the tasks are in non-decreasing order of the number of cycles.” • Binary search for position x.

  9. Complexity • Assume there N tasks already in the system. • There are m cores, each with ni tasks in queue. • Σni = N • For each corei • Binary search: ㏒(ni) • Compute Ciinc:ni

  10. Homogeneous Multi-core • Recall that in batch mode • “A round-robin scheduling that assigns heavier tasks to smaller k’ gives the minimum cost for a homogeneous multi-core system.” • Optimal scheduling plan. • Least Extra Cost will produce optimal scheduling plan after inserting a new task to an optimal scheduling plan in homogeneous multi-core.

  11. Example L5<Ln<L6 L2 L5 L8 L3 Ln L8 L1 L4 L7 Ln L2 L5 L7 L3 L6 L1 L4 L6 L2 L5 Ln L8 L2 L5 L8 L2 L5 L8 Min( , , ) L1 L4 L7 L1 L4 Ln L7 L1 L4 L7 L3 L6 L3 L6 L3 Ln L6

  12. Counterexample L5<Ln<L6 L2 L3 L8 L3 L4 L8 L1 L4 L7 Ln L2 L5 L7 L5 L6 L1 Ln L6 L2 L3 Ln L8 L2 L3 L8 L2 L3 L8 Min( , , ) L1 L4 L7 L1 L4 Ln L7 L1 L4 L7 L5 L6 L5 L6 L5 Ln L6

  13. Starvation • However, sorting tasks in non-decreasing order of the number of cycles may results in starvation for larger tasks. • One solution is that after the waiting time of a task exceeds a threshold, increase the priority of that task so that it can preempt the current task. • Slightly increasing the total cost.

  14. Next • Experiment • Prepare the paper for ICPP’14.

More Related