alphaFeedback

WorksComputer Science

From Partitioning to Provisioning: Co-Designing DNN Deployment and Infrastructure Capacity

AI contributions
Not recorded for this paper
View details

Abstract

Deep neural network (DNN) partitioning enables distributed inference by dividing model computation across interconnected devices. Existing approaches have largely focused on optimizing DNN deployment over infrastructure with fixed computing and communication capacities. Yet when these resources cannot adequately support inference demands, optimizing deployment alone is insufficient: the supporting infrastructure must also be provisioned. Crucially, deployment and provisioning are inherently coupled. How a DNN is partitioned determines where capacity is needed, while capacity provisioning can fundamentally change the preferred deployment. Motivated by this interdependence, we investigate the co-design of DNN deployment and infrastructure capacity for pipelined inference. Despite the coupling between these decisions, we reveal an efficiently solvable structure: on acyclic networks, the problem admits an exact shortest-path reformulation, enabling globally optimal joint design in polynomial time. Numerical evaluations demonstrate the benefits of co-design over treating deployment and provisioning separately, highlighting the potential of inference-driven infrastructure planning.

Introduction

Distributed deep neural network (DNN) inference [1], [2] enables computationally demanding models to be executed across interconnected devices. A key enabling technique is DNN partitioning [3], [4], which distributes different portions of a model across devices. For streaming workloads, these portions can operate as a pipeline, allowing successive inputs to be processed concurrently [5], [6]. How to partition and deploy DNNs across computing networks has thus become a fundamental problem in distributed inference.

Existing research has largely approached this problem from a deployment perspective: given an infrastructure with fixed computing and communication capacities, how should a DNN be partitioned and deployed to achieve the best inference performance? Extensive efforts have been devoted to optimizing inference latency [3], [7], [8], throughput [2], [6], and other performance metrics [9], [10] under such resource constraints. While this perspective addresses how to make effective use of existing infrastructure, it leaves open a complementary question: how should the infrastructure itself be provisioned to support the inference workloads deployed on it?

The answer depends on the deployment itself. Partitioning determines where computation occurs and how much data traverses each link [3], [8], thereby shaping where additional capacity is needed. Yet capacity expansion can change which deployment is preferable: a deployment that maximizes throughput with existing resources may be far more expensive to upgrade than an alternative. Deployment and infrastructure capacity must therefore be designed jointly, rather than optimized in sequence.

In this paper, we develop such a co-design framework for pipelined DNN inference. Given a computing network with heterogeneous capacity costs, we jointly optimize the physical deployment path, the partitioning of DNN computational blocks, and the additional computing and communication capacities needed to sustain a target inference throughput. Although this problem couples discrete deployment choices with continuous provisioning decisions, we show that it possesses an exact and efficiently solvable structure on acyclic networks. The key insight is that the bottleneck-stage characterization of pipeline throughput allows the capacity requirements of individual stages to be determined locally. These requirements induce additive provisioning costs along a deployment path, enabling an exact reduction of the joint design problem to a shortest-path problem on a state graph.

The main contributions of this paper are summarized below:

  • We formulate an inference-infrastructure co-design problem that jointly determines DNN partitioning, deployment paths, and computing and communication capacity increments. Unlike fixed-capacity deployment optimization, our formulation treats infrastructure capacity as a design variable, allowing inference deployment and capacity provisioning to be optimized together.

  • We establish an exact equivalence between the co-design problem on acyclic networks and a shortest-path problem on an appropriately constructed state graph. Based on this structural result, we develop a dynamic programming algorithm that obtains a globally optimal solution in O(∣V∣N+∣E∣N2)O(|\mathcal{V}|N + |\mathcal{E}|N^{2}) time and O(∣V∣N)O(|\mathcal{V}|N) space.

  • We evaluate the proposed approach on 400 instances with VGG-16 and ResNet-50 workloads. Compared with two heuristic provisioning strategies that do not jointly optimize deployment and capacity expansion, our approach achieves substantial cost reductions, with median cost ratios reaching 25 and worst-case ratios exceeding 100. These results highlight the importance of co-designing DNN deployment and its supporting infrastructure capacity.

Problem Formulation

We first describe how DNN deployment and network capacities determine pipelined inference throughput, and then formulate the minimum-cost co-design problem under a target throughput requirement.

DNN Deployment Model

The distributed computing network is modeled as a directed graph G=(V,E)G = (\mathcal{V}, \mathcal{E}), where V\mathcal{V} and E\mathcal{E} denote the sets of physical nodes and directed links, respectively. The network contains a source node s∈Vs \in\mathcal{V} and a destination node t∈Vt \in\mathcal{V}, with s≠ts \ne t, and at least one path from ss to tt is assumed to exist. Each node v∈Vv \in\mathcal{V} has existing computing capacity Cv>0C_v > 0, measured in floating-point operations per second. Each link e∈Ee \in\mathcal{E} has existing communication capacity Be>0B_e > 0, measured in bits per second. We collect the existing capacities into the vectors C=(Cv)v∈VC = (C_v)_{v \in\mathcal{V}} and B=(Be)e∈EB = (B_e)_{e \in\mathcal{E}}.

The DNN is represented by an ordered sequence of N≥1N \ge1 heterogeneous blocks, each of which may be a single layer or a module such as a residual or inception module. To characterize the computation and data transfer requirements, let Qn>0Q_n > 0 denote the number of floating-point operations required by block nn, for n=1,…,Nn = 1, \ldots, N; and let Dn>0D_n > 0 denote the activation size in bits after the first nn blocks, for n=0,…,Nn = 0, \ldots, N. Thus, D0D_0 is the raw input size and DND_N is the final output size. To express the computing workload of consecutive blocks assigned to a node, we define the prefix workload S0=0S_0 = 0 and

Sk=∑n=1kQnfor k=1,…,N.S_k = \sum_{n=1}^{k} Q_n \quad\text{for } k = 1, \ldots, N.

A node executing blocks i+1,…,ji + 1, \ldots, j then requires Sj−SiS_j - S_i floating-point operations.

A DNN deployment specifies both the physical route through the network and how consecutive DNN blocks are assigned to nodes on that route. We represent it by a path pp and a vector of partition points bpb_p. The path pp is defined as

p=(vp,1,vp,2,…,vp,Lp),vp,1=s,vp,Lp=t,(vp,ℓ,vp,ℓ+1)∈E,ℓ=1,…,Lp−1,vp,i≠vp,j,∀ 1≤i<j≤Lp,(1)\begin{aligned} p &= (v_{p,1},v_{p,2},\ldots,v_{p,L_p}), \quad v_{p,1}=s,\quad v_{p,L_p}=t,\\ (v_{p,\ell},v_{p,\ell+1}) &\in\mathcal{E}, \quad\ell=1,\ldots,L_p-1,\\ v_{p,i} &\ne v_{p,j}, \quad\forall\ 1\le i<j\le L_p, \tag*{(1)} \end{aligned}

where LpL_p is the number of nodes on pp, and vp,ℓv_{p,\ell} denotes its ℓ\ell-th node. Let P\mathcal{P} be the set of all such paths. For each p∈Pp \in\mathcal{P}, the vector of partition points is

bp=(bp,0,bp,1,…,bp,Lp)∈N0Lp+1,b_p = (b_{p,0},b_{p,1},\ldots,b_{p,L_p}) \in\mathbb{N}_0^{L_p+1},
0=bp,0≤bp,1≤⋯≤bp,Lp=N.(2)0=b_{p,0}\le b_{p,1}\le\cdots\le b_{p,L_p}=N. \tag*{(2)}

Let Bp\mathcal{B}_p be the set of all such vectors, where N0\mathbb{N}_0 denotes the non-negative integers. For ℓ=1,…,Lp\ell=1,\ldots,L_p, bp,ℓb_{p,\ell} denotes the number of DNN blocks completed along pp up to and including node vp,ℓv_{p,\ell}. Accordingly, node vp,ℓv_{p,\ell} executes blocks bp,ℓ−1+1,…,bp,ℓb_{p,\ell-1}+1,\ldots,b_{p,\ell}. If bp,ℓ=bp,ℓ−1b_{p,\ell}=b_{p,\ell-1}, the node performs no computation and only forwards the activation. After a node vp,ℓ≠tv_{p,\ell}\ne t completes its assigned blocks, it sends the activation of size Dbp,ℓD_{b_{p,\ell}} over the link (vp,ℓ,vp,ℓ+1)(v_{p,\ell},v_{p,\ell+1}).

Pipelined Throughput

In pipelined execution, the inference consists of computation stages and communication stages. We consider steady-state pipelined inference with sufficient buffering and no resource contention, where computation and communication stages can overlap across successive inputs. The slowest stage determines the output interval, whose reciprocal gives the inference throughput [8]. For a deployment (p,bp)(p,b_p), the computation time at each node equals its assigned workload divided by its computing capacity. Hence, the maximum computation-stage delay is

Tcomp(p,bp;C)=max⁡ℓ=1LpSbp,ℓ−Sbp,ℓ−1Cvp,ℓ.T^{\mathrm{comp}}(p,b_p;C)=\max_{\ell=1}^{L_p}\frac{S_{b_{p,\ell}}-S_{b_{p,\ell-1}}}{C_{v_{p,\ell}}}.

For ℓ=1,…,Lp−1\ell=1,\ldots,L_p-1, let ep,ℓ=(vp,ℓ,vp,ℓ+1)e_{p,\ell}=(v_{p,\ell},v_{p,\ell+1}) be the ℓ\ell-th link on pp. The corresponding communication time depends on the activation size and link capacity, giving the maximum communication-stage delay

Tcomm(p,bp;B)=max⁡ℓ=1Lp−1Dbp,ℓBep,ℓ.T^{\mathrm{comm}}(p,b_p;B)=\max_{\ell=1}^{L_p-1}\frac{D_{b_{p,\ell}}}{B_{e_{p,\ell}}}.

The output interval is therefore

T(p,bp;C,B)=max⁡{Tcomp(p,bp;C),Tcomm(p,bp;B)}.T(p,b_p;C,B)=\max\left\{T^{\mathrm{comp}}(p,b_p;C),T^{\mathrm{comm}}(p,b_p;B)\right\}.

The minimum achievable output interval over all feasible deployments is

T∗(C,B)=min⁡p∈P, bp∈BpT(p,bp;C,B),(3)T^*(C,B)=\min_{p\in\mathcal{P},\ b_p\in\mathcal{B}_p}T(p,b_p;C,B), \tag*{(3)}

and the maximum achievable inference throughput under these capacities is 1/T∗(C,B)1/T^*(C,B).

The Minimum-Cost Co-Design Problem

Suppose the inference service requires a throughput of at least 1/β1/\beta, where β>0\beta>0, or equivalently, an output interval no greater than β\beta. The goal is to meet this requirement at minimum provisioning cost by jointly determining the DNN deployment and capacity increments.

For every node v∈Vv\in\mathcal{V}, let xv≥0x_v\ge0 be the increment added to CvC_v, and for every link e∈Ee\in\mathcal{E}, let ye≥0y_e\ge0 be the increment added to BeB_e. We collect these increments into the vectors x=(xv)v∈Vx=(x_v)_{v\in\mathcal{V}} and y=(ye)e∈Ey=(y_e)_{e\in\mathcal{E}}. Since the cost of adding capacity can vary across the network, let πvcomp>0\pi_v^{\mathrm{comp}}>0 and πecomm>0\pi_e^{\mathrm{comm}}>0 be the unit prices of computing capacity and communication capacity, respectively, and collect them into the vectors πcomp=(πvcomp)v∈V\boldsymbol{\pi}^{\mathrm{comp}}=(\pi_v^{\mathrm{comp}})_{v\in\mathcal{V}} and πcomm=(πecomm)e∈E\boldsymbol{\pi}^{\mathrm{comm}}=(\pi_e^{\mathrm{comm}})_{e\in\mathcal{E}}. We consider linear provisioning costs for simplicity. The proposed method also applies to costs that are separable across nodes and links, non-decreasing in each capacity increment, and zero at zero increment.

After provisioning, the required throughput is achievable if T∗(C+x,B+y)≤βT^*(C+x,B+y)\le\beta. We therefore formulate the minimum-cost co-design problem as

min⁡x,y(πcomp)Tx+(πcomm)Tys.t.T∗(C+x,B+y)≤β,x,y≥0.(4)\begin{aligned} \min_{x,y}\quad&(\boldsymbol{\pi}^{\mathrm{comp}})^{\mathsf{T}}x+(\boldsymbol{\pi}^{\mathrm{comm}})^{\mathsf{T}}y\\ \text{s.t.}\quad&T^*(C+x,B+y)\le\beta,\quad x,y\ge0. \tag*{(4)} \end{aligned}

If the existing network already meets the throughput requirement, the optimal provisioning cost is zero. Otherwise, although (4) explicitly optimizes only xx and yy, the physical path and partition points are implicitly optimized through T∗T^* in (3). Since the preferred deployment can change with variable capacities, deployment and provisioning decisions are coupled. In the next section, we exploit the acyclic network structure to obtain an exact solution to this co-design problem.

Exact Co-Design on Acyclic Networks

Cost-Weighted State Representation

We represent the deployment decisions in (4) using an auxiliary state graph GS=(VS,ES)G_{\mathrm{S}} = (V_{\mathrm{S}}, E_{\mathrm{S}}), where VSV_{\mathrm{S}} is the set of states and ESE_{\mathrm{S}} is the set of state transitions, both defined later in this section. Two edge weight functions δ(⋅;x,y),w:ES→R≥0\delta(\cdot; \boldsymbol{x}, \boldsymbol{y}), w : E_{\mathrm{S}} \to\mathbb{R}_{\geq0} are defined in Sections III-A1 and III-A2, respectively.

Introduce a virtual terminal node τ∉V\tau\notin\mathcal{V}. For each node, let IvI_v denote its feasible block indices, with Is={0}I_s = \{0\}, Iv={0,1,…,N}I_v = \{0,1,\ldots,N\} for every v∈V∖{s}v \in\mathcal{V} \setminus\{s\}, and Iτ={N}I_\tau= \{N\}. The set of states (vertices of GSG_{\mathrm{S}}) is therefore VS={(v,i):v∈V∪{τ},i∈Iv}V_{\mathrm{S}} = \{(v,i): v \in\mathcal{V} \cup\{\tau\}, i \in I_v\}. A state (v,i)(v,i) means that the activation after block ii has arrived at vv, before vv processes any further blocks. In particular, (s,0)(s,0) means that the raw input has arrived at ss and no DNN blocks have yet been executed; (τ,N)(\tau,N) means that all NN blocks have been processed and the final output is available at tt.

Introduce a virtual link eτ=(t,τ)e_\tau= (t,\tau) with Beτ=+∞B_{e_\tau} = +\infty and yeτ=πeτcomm=0y_{e_\tau} = \pi^{\mathrm{comm}}_{e_\tau} = 0, so that the weight formulas below apply to eτe_\tau. The set of state transitions (edges of GSG_{\mathrm{S}}) is

ES={((v,i),(z,j)):(v,z)∈E∪{eτ}, i∈Iv, j∈Iz, i≤j}.(5)E_{\mathrm{S}} = \left\{((v,i),(z,j)) : (v,z) \in E \cup\{e_\tau\},\ i \in I_v,\ j \in I_z,\ i \leq j\right\}. \tag*{(5)}

For ξ=((v,i),(z,j))∈ES\xi= ((v,i),(z,j)) \in E_{\mathrm{S}}, define v(ξ)≜vv(\xi) \triangleq v, e(ξ)≜(v,z)e(\xi) \triangleq(v,z), i(ξ)≜ii(\xi) \triangleq i, j(ξ)≜jj(\xi) \triangleq j.

We call a simple path from (s,0)(s,0) to (τ,N)(\tau,N) in GSG_{\mathrm{S}} a state path, and let R\mathcal{R} be the set of all state paths. For each r∈Rr \in\mathcal{R}, let ES(r)⊆ESE_{\mathrm{S}}(r) \subseteq E_{\mathrm{S}} be the set of transitions between states of $r. Figure 1 illustrates GSG_{\mathrm{S}} for a simple network. We next define the delay and provisioning cost associated with each state transition.

The state graph $G_{\mathrm{S}}$ for a small example with one intermediate node $u$ and links $(s,u)$, $(u,t)$

Figure 1. The state graph GSG_{\mathrm{S}} for a small example with one intermediate node uu and links (s,u)(s,u), (u,t)(u,t). Each transition carries the cost weight w(ξ)w(\xi) needed to meet the throughput constraint. The highlighted state path selects the physical path and the partition points. The vertical dots represent omitted states with indices 4,…,N−14,\ldots,N-1 and their incident transitions.

Delay of Transitions

1) Delay of Transitions: For a transition ξ∈ES\xi\in E_{\mathrm{S}}, the computation at v(ξ)v(\xi) and communication over e(ξ)e(\xi) form two pipeline stages. Under capacity increments x\boldsymbol{x} and y\boldsymbol{y}, its delay is represented as the larger of their delays:

δ(ξ;x,y)≜max⁡{Sj(ξ)−Si(ξ)Cv(ξ)+xv(ξ),Dj(ξ)Be(ξ)+ye(ξ)}.\delta(\xi;\boldsymbol{x},\boldsymbol{y}) \triangleq\max\left\{\frac{S_{j(\xi)}-S_{i(\xi)}}{C_{v(\xi)}+x_{v(\xi)}},\frac{D_{j(\xi)}}{B_{e(\xi)}+y_{e(\xi)}}\right\}.

The following lemma shows that state paths preserve both the deployment choices and their output intervals.

Lemma 1: If GG is acyclic, the mapping (p,bp)↦r(p,\boldsymbol{b}_p) \mapsto r defines a bijection between {(p,bp):p∈P, bp∈Bp}\{(p,\boldsymbol{b}_p): p \in\mathcal{P},\ \boldsymbol{b}_p \in\mathcal{B}_p\} and R\mathcal{R}. Moreover, if rr is the state path corresponding to (p,bp)(p,\boldsymbol{b}_p), then

T(p,bp;C+x,B+y)=max⁡ξ∈ES(r)δ(ξ;x,y).T(p,\boldsymbol{b}_p; \boldsymbol{C}+\boldsymbol{x},\boldsymbol{B}+\boldsymbol{y}) = \max_{\xi\in E_{\mathrm{S}}(r)} \delta(\xi;\boldsymbol{x},\boldsymbol{y}).

Proof: Forward map. Given (p,bp)(p,\boldsymbol{b}_p), let vp,Lp+1=τv_{p,L_p+1}=\tau and define ηℓ=(vp,ℓ,bp,ℓ−1)\eta_\ell=(v_{p,\ell},b_{p,\ell-1}) for ℓ=1,…,Lp+1\ell=1,\ldots,L_p+1. By (1) and (2), each consecutive pair (ηℓ,ηℓ+1)(\eta_\ell,\eta_{\ell+1}) belongs to ESE_{\mathrm{S}}. The resulting sequence starts at (s,0)(s,0) and ends at (τ,N)(\tau,N), and thus defines a state path r∈Rr \in\mathcal{R}.

Inverse map. Let r∈Rr \in\mathcal{R} be represented by the sequence ((u1,i1),…,(uk−1,ik−1),(uk,ik))((u_1,i_1),\ldots,(u_{k-1},i_{k-1}),(u_k,i_k)), where u1=su_1=s, i1=0i_1=0, uk−1=tu_{k-1}=t, and ik=Ni_k=N. By (5), (uℓ,uℓ+1)∈E∪{eτ}(u_\ell,u_{\ell+1}) \in E \cup\{e_\tau\} for all ℓ=1,…,k−1\ell=1,\ldots,k-1. Since GG is acyclic, u1,…,uk−1u_1,\ldots,u_{k-1} are pairwise distinct, and hence p=(u1,…,uk−1)∈Pp=(u_1,\ldots,u_{k-1}) \in\mathcal{P}. Moreover, since iℓ≤iℓ+1i_\ell\leq i_{\ell+1} for all ℓ=1,…,k−1\ell=1,\ldots,k-1, bp=(i1,…,ik−1,ik)∈Bp\boldsymbol{b}_p=(i_1,\ldots,i_{k-1},i_k) \in\mathcal{B}_p. Thus, the forward and inverse constructions are mutually inverse, proving the bijection.

Interval equality. Each transition ξℓ=(ηℓ,ηℓ+1)\xi_\ell=(\eta_\ell,\eta_{\ell+1}) represents the computation at node vp,ℓv_{p,\ell} followed by transmission over its outgoing link. Let ep,Lp=eτe_{p,L_p}=e_\tau. Since Beτ=+∞B_{e_\tau}=+\infty, the final transition has zero communication delay. Therefore,

T(p,bp;C+x,B+y)=max⁡ℓ=1Lp+1{Sbp,ℓ−Sbp,ℓ−1Cvp,ℓ+xvp,ℓ,Dbp,ℓBep,ℓ+yep,ℓ}=max⁡ξ∈ES(r){Sj(ξ)−Si(ξ)Cv(ξ)+xv(ξ),Dj(ξ)Be(ξ)+ye(ξ)}=max⁡ξ∈ES(r)δ(ξ;x,y).\begin{aligned} T(p,\boldsymbol{b}_p;\boldsymbol{C}+\boldsymbol{x},\boldsymbol{B}+\boldsymbol{y}) &= \max_{\ell=1}^{L_p+1}\left\{\frac{S_{b_{p,\ell}}-S_{b_{p,\ell-1}}}{C_{v_{p,\ell}}+x_{v_{p,\ell}}},\frac{D_{b_{p,\ell}}}{B_{e_{p,\ell}}+y_{e_{p,\ell}}}\right\}\\ &= \max_{\xi\in E_{\mathrm{S}}(r)}\left\{\frac{S_{j(\xi)}-S_{i(\xi)}}{C_{v(\xi)}+x_{v(\xi)}},\frac{D_{j(\xi)}}{B_{e(\xi)}+y_{e(\xi)}}\right\}\\ &= \max_{\xi\in E_{\mathrm{S}}(r)}\delta(\xi;\boldsymbol{x},\boldsymbol{y}). \end{aligned}

By (3) and Lemma 1, the minimum output interval can be expressed entirely over state paths:

T∗(C+x,B+y)=min⁡r∈Rmax⁡ξ∈ES(r)δ(ξ;x,y).(6)T^*(\boldsymbol{C}+\boldsymbol{x},\boldsymbol{B}+\boldsymbol{y})=\min_{r\in\mathcal{R}}\max_{\xi\in E_{\mathrm{S}}(r)}\delta(\xi;\boldsymbol{x},\boldsymbol{y}). \tag*{(6)}

Cost of Transitions

2) Cost of Transitions: By (6), a state path meets the throughput target if every transition on it has a delay no greater than β\beta. For each ξ∈ES\xi\in E_{\mathrm{S}}, δ(ξ;x,y)≤β\delta(\xi;\boldsymbol{x},\boldsymbol{y})\leq\beta is equivalent to

xv(ξ)≥Sj(ξ)−Si(ξ)β−Cv(ξ),ye(ξ)≥Dj(ξ)β−Be(ξ).x_{v(\xi)} \geq\frac{S_{j(\xi)}-S_{i(\xi)}}{\beta}-C_{v(\xi)},\qquad y_{e(\xi)} \geq\frac{D_{j(\xi)}}{\beta}-B_{e(\xi)}.

Together with the non-negativity constraints, these inequalities give the minimum computing and communication capacity increments required by ξ\xi:

ρ(ξ)≜[Sj(ξ)−Si(ξ)β−Cv(ξ)]+,σ(ξ)≜[Dj(ξ)β−Be(ξ)]+,\rho(\xi)\triangleq\left[\frac{S_{j(\xi)}-S_{i(\xi)}}{\beta}-C_{v(\xi)}\right]^+,\qquad \sigma(\xi)\triangleq\left[\frac{D_{j(\xi)}}{\beta}-B_{e(\xi)}\right]^+,

where [x]+≜max⁡{0,x}[x]^+ \triangleq\max\{0,x\}. Using the unit capacity prices, we define the provisioning cost of transition ξ\xi as

w(ξ)≜πv(ξ)compρ(ξ)+πe(ξ)commσ(ξ).w(\xi)\triangleq\pi^{\mathrm{comp}}_{v(\xi)}\rho(\xi)+\pi^{\mathrm{comm}}_{e(\xi)}\sigma(\xi).

An Exact Shortest-Path Solution

Lemma [1] establishes a correspondence between DNN deployments and state paths, while w(ξ)w(\xi) gives the minimum

Algorithm 1 Provisioning on a State Graph (PSG)

Input: $G = (\mathcal{V}, \mathcal{E})$, $C$, $B$, $Q_1,\ldots,Q_N$, $D_0,\ldots,D_N$, $\beta$, $\boldsymbol{\pi}^{\mathrm{comp}}$, $\boldsymbol{\pi}^{\mathrm{comm}}$

Output: optimal physical path $p^*$, partition points $b_{p^*}$, and capacity increments $\mathbf{x}^*,\mathbf{y}^*$

1: compute $S_0,\ldots,S_N$ and a topological order $v_1,\ldots,v_{|\mathcal{V}|}$ of $\mathcal{V}$; set $v_{|\mathcal{V}|+1}\leftarrow\tau$
2: $\operatorname{dist}(s,0)\leftarrow 0$, $\operatorname{dist}(v,i)\leftarrow+\infty$ for all other states, and clear $\operatorname{pred}$
3: for $d=1,\ldots,|\mathcal{V}|+1$ do
4:   for all $i\in I_{v_d}$ with $\operatorname{dist}(v_d,i)<+\infty$ do
5:     for all $(v_d,z)\in\mathcal{E}\cup\{e_\tau\}$ do
6:       for all $j\in I_z$ with $j\ge i$ do
7:         $\xi\leftarrow((v_d,i),(z,j))$
8:         compute $w(\xi)$
9:         if $\operatorname{dist}(v_d,i)+w(\xi)<\operatorname{dist}(z,j)$ then
10:          $\operatorname{dist}(z,j)\leftarrow\operatorname{dist}(v_d,i)+w(\xi)$
11:          $\operatorname{pred}(z,j)\leftarrow(v_d,i)$
12:        end if
13:      end for
14:    end for
15:  end for
16: end for
17: backtrack $\operatorname{pred}$ from $(\tau,N)$ to $(s,0)$ into a state path $r^*$
18: return $(p^*,b_{p^*},\mathbf{x}^*,\mathbf{y}^*)$ from $r^*$ as in the proofs of {xref}`Lemma 1` and {xref}`Theorem 1`, of cost $\operatorname{dist}(\tau,N)$

provisioning cost for each transition. If the physical network is acyclic, no physical node or link is used more than once along a state path. These costs can therefore be added along the path, leading to the following exact equivalence.

Theorem 1. If GG is acyclic, the optimal value of problem (4) equals the shortest path distance from (s,0)(s,0) to (τ,N)(\tau,N) in GSG_S with ww as the edge weight function, i.e., min⁡r∈R∑ξ∈ES(r)w(ξ)\min_{r\in\mathcal{R}}\sum_{\xi\in\mathcal{E}_S(r)}w(\xi). Moreover, if a shortest state path is found, an optimal solution of (4) can be derived accordingly.

Proof. For any transition ξ∈ES\xi\in\mathcal{E}_S, the delay requirement and non-negative capacity increments give

δ(ξ;x,y)≤β⟺xv(ξ)≥ρ(ξ),ye(ξ)≥σ(ξ).(7)\delta(\xi;\mathbf{x},\mathbf{y})\le\beta\Longleftrightarrow x_{v(\xi)}\ge\rho(\xi),\quad y_{e(\xi)}\ge\sigma(\xi). \tag*{(7)}

Let J(x,y)=(πcomp)Tx+(πcomm)TyJ(\mathbf{x},\mathbf{y})=(\boldsymbol{\pi}^{\mathrm{comp}})^{\mathsf{T}}\mathbf{x}+(\boldsymbol{\pi}^{\mathrm{comm}})^{\mathsf{T}}\mathbf{y}. For any feasible (x,y)(\mathbf{x},\mathbf{y}), (6) guarantees a state path r∈Rr\in\mathcal{R} satisfying δ(ξ;x,y)≤β\delta(\xi;\mathbf{x},\mathbf{y})\le\beta for every ξ∈ES(r)\xi\in\mathcal{E}_S(r). Since GG is acyclic, no physical node or link appears more than once on rr. Thus, by (7) and the non-negative capacity prices,

J(x,y)≥∑ξ∈ES(r)w(ξ)≥min⁡r′∈R∑ξ∈ES(r′)w(ξ).J(\mathbf{x},\mathbf{y})\ge\sum_{\xi\in\mathcal{E}_S(r)}w(\xi)\ge\min_{r'\in\mathcal{R}}\sum_{\xi\in\mathcal{E}_S(r')}w(\xi).

Conversely, let r∗r^* be a shortest state path, and set xv(ξ)∗=ρ(ξ)x^*_{v(\xi)}=\rho(\xi) and ye(ξ)∗=σ(ξ)y^*_{e(\xi)}=\sigma(\xi) for all ξ\xi of r∗r^*, with all other increments set to zero. By (7), this allocation is feasible. Since no physical resource is repeated along r∗r^*,

J(x∗,y∗)=∑ξ∈ES(r∗)w(ξ)=min⁡r∈R∑ξ∈ES(r)w(ξ).J(\mathbf{x}^*,\mathbf{y}^*)=\sum_{\xi\in\mathcal{E}_S(r^*)}w(\xi)=\min_{r\in\mathcal{R}}\sum_{\xi\in\mathcal{E}_S(r)}w(\xi).

The corresponding deployment follows from Lemma 1. ▪

By Theorem 1, the co-design problem reduces to a shortest-path problem on GSG_S when GG is acyclic. Since every state transition follows a physical link or eτe_\tau, a topological order of GG, with τ\tau placed last, also gives a topological order of the state graph. We can therefore solve the problem by dynamic programming without explicitly constructing GSG_S. Maintain a label dist⁡(v,i)\operatorname{dist}(v,i), set to 00 at (s,0)(s,0) and +∞+\infty elsewhere. Each transition ξ=((v,i),(z,j))\xi=((v,i),(z,j)) is relaxed according to

dist⁡(z,j)←min⁡{dist⁡(z,j),dist⁡(v,i)+w(ξ)}.(8)\operatorname{dist}(z,j)\leftarrow\min\{\operatorname{dist}(z,j),\operatorname{dist}(v,i)+w(\xi)\}. \tag*{(8)}

Processing states in topological order yields the optimal cost dist⁡(τ,N)\operatorname{dist}(\tau,N). The predecessor pointers recover the corresponding deployment and capacity increments, as detailed in Algorithm 1.

Proposition 1. Algorithm 1 returns an optimal solution of (4) in O(∣V∣N+∣E∣N2)O(|\mathcal{V}|N+|\mathcal{E}|N^2) time and O(∣V∣N)O(|\mathcal{V}|N) space.

Proof. Optimality follows from Theorem 1, since the relaxations in (8) are performed in topological order. The state graph GSG_S has O(∣V∣N)O(|\mathcal{V}|N) states and O(∣E∣N2)O(|\mathcal{E}|N^2) transitions. Each transition is processed once, and its weight is computed in O(1)O(1) time. Since transitions are generated on demand from E\mathcal{E}, the state graph need not be explicitly stored. Thus, only O(∣V∣N)O(|\mathcal{V}|N) distance labels and predecessor pointers are required. ▪

The same algorithm applies to the separable, non-decreasing provisioning costs described in Section II-C. It suffices to redefine w(ξ)=fv(ξ)(ρ(ξ))+ge(ξ)(σ(ξ))w(\xi)=f_{v(\xi)}(\rho(\xi))+g_{e(\xi)}(\sigma(\xi)), where fvf_v and geg_e are non-decreasing on R≥0\mathbb{R}_{\ge0} and zero at zero.

Numerical Results

We evaluate the benefit of minimum-cost co-design by comparing PSG (Algorithm 1) with two provisioning heuristics that use throughput-optimal deployments to guide capacity upgrades. The experiments consider randomly generated tiered networks with VGG-16 and ResNet-50 workloads.

Both heuristics use throughput-optimal deployments to guide provisioning, without accounting for capacity prices. PFP (Provisioning under Frozen-Partitioning) fixes an initial throughput-optimal deployment and purchases the minimum capacity increments needed to meet β\beta. PWF (Provisioning with Water-Filling) reduces the bottleneck stage delays of the current deployment to the next lower delay level or β\beta, and recomputes a throughput-optimal deployment after each upgrade. When (3) admits multiple throughput-optimal deployments, PWF selects one of them (the first found by the solver) rather than enumerating all optima. For any d>0d>0,

EntityDistributionUnit
CvC_v, source & access tierU[6,30]U[6,30]GFLOP/s
CvC_v, middle tierU[30,90]U[30,90]GFLOP/s
CvC_v, remote tier & ttU[90,180]U[90,180]GFLOP/s
BeB_e, links to access tierU[30,100]U[30,100]Mbps
BeB_e, links to middle tierU[100,300]U[100,300]Mbps
BeB_e, links to remote tier & ttU[300,1000]U[300,1000]Mbps
πvcomp\pi_v^{\mathrm{comp}}, nodesLU[0.1,10]\mathrm{LU}[0.1,10]per GFLOP/s
πecomm\pi_e^{\mathrm{comm}}, linksLU[0.01,1]\mathrm{LU}[0.01,1]per Mbps

Table 1. Capacities and unit prices (UU: uniform; LU: log-uniform).

let ρd(ξ)\rho_d(\xi) and σd(ξ)\sigma_d(\xi) denote ρ(ξ)\rho(\xi) and σ(ξ)\sigma(\xi) in Section III-A2 with β\beta replaced by dd. Algorithm 2 summarizes PWF, which terminated on all tested instances.

The DNN workloads are analytic block profiles of VGG-16 (N=16N = 16) and ResNet-50 (N=18N = 18) with 224×224224 \times224 inputs. Block workloads and activation sizes are derived from layer shapes, assuming FP32 activations and two floating-point operations per multiply-accumulate, with max-pooling folded into the preceding VGG-16 block and global average pooling folded into the last ResNet-50 block.

We generate 50 tiered DAGs, each consisting of a source ss, three intermediate tiers (access, middle, and remote) with 2–3 nodes each, and a destination tt. Each node has 1–3 randomly selected links to the next tier, except remote-tier nodes, which each connect to tt. The resulting networks contain 8–11 nodes and at least one path from ss to tt. Existing capacities and unit prices follow the distributions in Table I.

For each topology and DNN, we set β=αT∗(C,B)\beta= \alpha T^*(C, B), where α∈{0.25,0.4,0.6,0.8}\alpha\in\{0.25, 0.4, 0.6, 0.8\}. Since α<1\alpha< 1, all instances require additional capacity. Using the same 50 topologies for both DNNs yields 50×2×4=40050 \times2 \times4 = 400 instances. We measure the ratio of each heuristic’s provisioning cost to the optimal cost obtained by PSG.

Figure 2 compares the provisioning-cost ratios over all 400 instances. PFP incurs median ratios of 5.1–8.6 for VGG-16 and 6.5–25.3 for ResNet-50, with worst cases of 144 and 639, respectively. PWF matches the optimum in 80% of ResNet-50 instances at α=0.8\alpha= 0.8, but its median ratios remain 4.1–9.4 for VGG-16 and reach 5.6 for ResNet-50, with a worst case of 44. For VGG-16, the median ratios of both heuristics increase as α\alpha decreases, reaching 8.6 (PFP) and 9.4 (PWF) at α=0.25\alpha= 0.25.

Box plots of the cost ratio of PWF and PFP to PSG for VGG-16 and ResNet-50

Figure 2. The cost ratio of PWF and PFP to PSG versus the relative target α\alpha on all 400 instances: VGG-16 (top) and ResNet-50 (bottom). Boxes span interquartile ranges, whiskers extend to 1.5×1.5\times the interquartile range, diamonds mark means, dots mark individual instances, and the dashed line marks the exact optimum; the vertical axis is logarithmic.

The cost gap reflects a key difference: the heuristics choose capacity upgrades without considering prices, whereas PSG minimizes price-weighted costs across feasible deployments. These results show that joint optimization can lead to much lower provisioning costs, even when deployment is updated during provisioning. In our Python implementation on an AMD Ryzen 7 8845H CPU, the median runtimes are 0.25, 0.28, and 1.8 ms for PSG, PFP, and PWF, respectively, showing that PSG remains computationally efficient on the tested instances.

Conclusion

This paper established an exact approach to co-designing DNN deployment and infrastructure capacity over acyclic

networks. Beyond the algorithmic result, the broader insight is that the value of computing and communication capacity depends on how it serves the inference workload as a whole, rather than on individual resources in isolation. This points toward a fundamental shift in AI infrastructure planning: from expanding available resources to strategically provisioning capacity where it delivers the greatest end-to-end benefit.

References

References

  1. [1]S. Teerapittayanon, B. McDanel, and H.-T. Kung, “Distributed deep neural networks over the cloud, the edge and end devices,” in IEEE Int. Conf. Dist. Comp. Syst. (ICDCS), 2017, pp. 328–339.arxiv.org/abs/1709.01921
  2. [2]Z. Zhao, K. Mirzazad Barijough, and A. Gerstlauer, “DeepThings: Distributed adaptive deep learning inference on resource-constrained IoT edge clusters,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 37, no. 11, pp. 2348–2359, 2018.DOI
  3. [3]Y. Kang, J. Hauswald, G. A. Rovinski, T. Mudge, J. Mars, and L. Tang, “Neuroseason: Collaborative intelligence between the cloud and mobile edge,” in ACM ASPLOS, 2017, pp. 615–629.
  4. [4]A. E. Eshratifar, M. S. Abrishami, and M. Pedram, “JointDNN: An efficient training and inference engine for intelligent mobile cloud computing services,” IEEE Transactions on Mobile Computing, vol. 20, no. 2, pp. 565–576, 2021.
  5. [5]N. R. Hadidi, J. Cao, M. S. Ryoo, and H. Kim, “Toward collaborative inferencing of deep neural networks on internet-of-things devices,” IEEE Internet of Things Journal, vol. 7, no. 6, pp. 4950–4960, 2020.DOI
  6. [6]Y. Hu, C. Imes, X. Zhao, S. Kundu, P. A. Beerél, S. P. Crago, and J. P. Walters, “PipeEdge: Pipeline parallelism for large-scale model inference on heterogeneous edge devices,” in IEEE DSD, 2022, pp. 298–307.DOI
  7. [7]E. Li, L. Zeng, Z. Zhou, and X. Chen, “Edge AI: On-demand accelerating deep neural network inference via edge computing,” IEEE Trans. Wireless Commun., vol. 19, no. 1, pp. 447–457, 2020.arxiv.org/abs/1910.05316
  8. [8]C. Hu, W. Bao, D. Wang, and F. Liu, “Dynamic adaptive DNN surgery for inference acceleration on the edge,” in IEEE INFOCOM, 2019.
  9. [9]L. Zeng, X. Chen, Z. Zhou, L. Yang, and J. Zhang, “CoEdge: Cooperative DNN inference with adaptive workload partitioning over heterogeneous edge devices,” IEEE/ACM Transactions on Networking, vol. 29, no. 2, pp. 595–608, 2021.arxiv.org/abs/2012.03257
  10. [10]S. Laskaris, S. I. Venieris, M. Almeida, I. Leontiadis, and N. D. Lane, “SPINN: Synergistic progressive inference of neural networks over device and cloud,” in ACM MobiCom, 2020.

Paper details

vlnc:W_wpvmuvrk
v1 · latestHistory (1)

published · Fresh — added to the Hub within the last 30 days

added ·

Usage

views · 0

downloads · 0

A view counts once per browser per day, a download each time the PDF is requested.

CC BY 4.0

Original source

  • Computer Science

Not recorded for this paper · View statement →

Looking for related papers…
Contents