Convex Optimization in Local Single-Threaded Parallel Mobile Computing Rashid Khogali Olivia Das...

Post on 17-Dec-2015

214 views 0 download

Tags:

Transcript of Convex Optimization in Local Single-Threaded Parallel Mobile Computing Rashid Khogali Olivia Das...

Convex Optimization in Local Single-Threaded Parallel Mobile ComputingRashid KhogaliOlivia DasKaamran Raahemifar

ScenarioEach processor has

a memory queue that accommodates an arbitrary maximum number of tasks.

Tasks and processors are heterogeneous.

GoalFind the optimized decision

algorithm. dictates which task goes to which

processing stream. “optimize” means to minimize both time

and energy consumption.

Determine the optimized processing rate of executing each task.

AssumptionsHeterogeneous processors and

tasksOnlineConstrained processing ratesEnergy cost affected by

remaining energy levelUser determines unit cost of

energy and timeStochastic availabilityMultiple energy sources

DefinitionsTask Tk = (mk, p μ,k, Bk)

mk :memory requirement in bits.

p μ,k :minimum recommended execution rate of the task.

Bk : number of base instructions.

User Profile Uk = (αε,k, αt,k) αε,k : energy cost sensitivity factor($/Joule)

αt,k : time cost sensitivity factor($/Second)

αε,k is treated with more objectivity than αt,k.

Stream ProcessorPs,j Ps,j : operating frequency (base

instructions/second) p μ,k ≦ Ps,j ≦ PMax,j

Definitions(cont.)Task’s Energy and Power

Consumptionεk = λj(pk)3tk

tk = Bk / pk εk : expected energy consumption(Joules)

pk : actual execution rate

tk : actual execution time

Bk : task’s number of base instructions

λj : processor energy inefficiency coefficient

εk = λjBk(pk)2

Constraints

Mm : available memory

(Em,j – Eθ,j) : usable battery energy of jth processing stream

StepsAssume the potential aggregate

cost of introducing the task to each of the processing streams.

Minimize the aggregate cost function by re-adjusting the processing rates of all tasks in the queue.

Choose the stream with the lowest potential aggregate cost.

Cost Function Cj : cost of the jth

stream ij : # of task in

queue ε%,j : remaining

power Al,j : availability of

executing Tl in the jth

stream t θ,r,j : overhead

access time of a task Tr to be accessed by Pj

Cost Function(Cont.)Rearrange the cost functionAssume Ak,j = Aj, ∀k ∈ {1,2, … ,

ij}

otherwise

Minimizing Cost Function“ i ” dimensional optimization

problem for each stream.Adjustable parameter: pl

Optimize Cj

Minimizing Cost Function(Cont.)

Minimizing Cost Function(Cont.)

Confirm MinimaUse Hessian matrix[1] to confirm

minima.

[1] 海森矩陣: http://zh.wikipedia.org/wiki/%E6%B5%B7%E6%A3%AE%E7%9F%A9%E9%98%B5

Confirm Minima(Cont.)

Minimizing Constrained Cost FunctionDon’t forget “p μ,k ≦ Ps,j ≦ PMax,j”

Single-threading Multi-buffer Scheduling & Processing AlgorithmUser specifies αε,k and αt,k for each

Tk ∈ T.For an arriving task Tk ∈ T,

evaluate and compare the minimum potential processing cost Cmin.

Tk is assigned to stream j* and to be processed at an adjusted optimum processing rate.

Single-threading Multi-buffer Scheduling & Processing Algorithm(Cont.)Execute T1,j* at rate

Update processing rate whenever a task is either introduced or deleted to Qs,j*.

Analytical Demonstration

ConclusionThe authors propose a real-time

multiprocessor scheduling algorithm(SMSP).

The algorithm explicitly finds a globally optimum solution for each aggregate cost function.◦Minimizes the sum of both energy

and execution time of tasks.

Assume ε%,j does not significant vary or is more or less a constant function of pk.

◦The assumption is valid as long as the condition: εk << E cap,j , is satisfied.