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
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
mk
p μ,k
Bk
Tk = (mk, p μ,k, Bk)
:memory requirement in bits.
:minimum recommended execution rate of the task.
: 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)3tk
tk = Bk / pk
εk
εk
pk
tk
Bk
λj
: expected energy consumption(Joules)
: actual execution rate
: actual execution time
: task’s number of base instructions
: processor energy inefficiency coefficient
= λjBk(pk)2
Constraints
Mm
(Em,j – Eθ,j)
stream
: available memory
: usable battery energy of jth processing
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 jth stream
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 optimization problem for
each stream.
Adjustable parameter: pl
Optimize Cj
Minimizing Cost Function(Cont.)
Minimizing Cost Function(Cont.)
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
Confirm Minima(Cont.)
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,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
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 << E cap,j , is satisfied.
© Copyright 2026 Paperzz