220 likes | 433 Views
Convex Optimization in Local Single-Threaded Parallel Mobile Computing. Rashid Khogali Olivia Das Kaamran Raahemifar. Scenario. Each processor has a memory queue that accommodates an arbitrary maximum number of tasks. Tasks and processors are heterogeneous. Goal.
E N D
Convex Optimization in Local Single-Threaded Parallel Mobile Computing Rashid Khogali Olivia Das KaamranRaahemifar
Scenario • Each processor has a memory queue that accommodates an arbitrary maximum number of tasks. • Tasks and processors are heterogeneous.
Goal • Find 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.
Assumptions • Heterogeneous processors and tasks • Online • Constrained processing rates • Energy cost affected by remaining energy level • User determines unit cost of energy and time • Stochastic availability • Multiple energy sources
Definitions • Task 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 Processor Ps,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)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
Constraints • Mm : available memory • (Em,j – Eθ,j) : usable battery energy of jth processing stream
Steps • Assume 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 jthstream • tθ,r,j : overhead access time of a task Tr to be accessed by Pj
Cost Function(Cont.) • Rearrange the cost function • Assume Ak,j = Aj, ∀k ∈ {1,2, … , ij} • otherwise
Minimizing Cost Function • “ i ” dimensional optimizationproblem for each stream. • Adjustable parameter:pl • Optimize Cj
Confirm Minima • Use Hessian matrix[1] to confirm minima. [1] 海森矩陣:http://zh.wikipedia.org/wiki/%E6%B5%B7%E6%A3%AE%E7%9F%A9%E9%98%B5
Minimizing Constrained Cost Function • Don’t forget “pμ,k ≦ Ps,j ≦ PMax,j”
Single-threading Multi-buffer Scheduling & Processing Algorithm • User specifies αε,k and αt,kfor each Tk∈ T. • For an arriving task Tk∈ T, evaluate and comparethe minimum potential processing costCmin. • Tkis 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*.
Conclusion • The 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 << Ecap,j , is satisfied.