![Page 1: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/1.jpg)
Convex Optimization in Local Single-Threaded Parallel Mobile ComputingRashid KhogaliOlivia DasKaamran Raahemifar
![Page 2: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/2.jpg)
ScenarioEach processor has
a memory queue that accommodates an arbitrary maximum number of tasks.
Tasks and processors are heterogeneous.
![Page 3: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/3.jpg)
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.
![Page 4: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/4.jpg)
AssumptionsHeterogeneous processors and
tasksOnlineConstrained processing ratesEnergy cost affected by remaining
energy levelUser determines unit cost of
energy and timeStochastic availabilityMultiple energy sources
![Page 5: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/5.jpg)
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
![Page 6: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/6.jpg)
Definitions(cont.)Task’s Energy and Power
Consumptionεk = λj(pk)3tktk = 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
![Page 7: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/7.jpg)
Constraints
Mm : available memory (Em,j – Eθ,j) : usable battery energy of jth
processing stream
![Page 8: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/8.jpg)
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.
![Page 9: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/9.jpg)
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
![Page 10: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/10.jpg)
Cost Function(Cont.)Rearrange the cost functionAssume Ak,j = Aj, ∀k ∈ {1,2, … ,
ij}
otherwise
![Page 11: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/11.jpg)
Minimizing Cost Function“ i ” dimensional optimization
problem for each stream.Adjustable parameter: plOptimize Cj
![Page 12: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/12.jpg)
Minimizing Cost Function(Cont.)
![Page 13: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/13.jpg)
Minimizing Cost Function(Cont.)
![Page 14: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/14.jpg)
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
![Page 15: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/15.jpg)
Confirm Minima(Cont.)
![Page 16: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/16.jpg)
Minimizing Constrained Cost FunctionDon’t forget “p μ,k ≦ Ps,j ≦ PMax,j”
![Page 17: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/17.jpg)
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.
![Page 18: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/18.jpg)
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*.
![Page 19: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/19.jpg)
Analytical Demonstration
![Page 20: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/20.jpg)
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.
![Page 21: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/21.jpg)
![Page 22: Convex Optimization in Local Single-Threaded Parallel Mobile Computing](https://reader035.vdocuments.mx/reader035/viewer/2022081520/56816936550346895de09804/html5/thumbnails/22.jpg)
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.