<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>Stochastic Learning of Computational Resource Usage as Graph-Structured Multimarginal Schrödinger Bridge</title></titleStmt>
			<publicationStmt>
				<publisher>IEEE Transactions on Control Systems Technology</publisher>
				<date>09/01/2025</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10651381</idno>
					<idno type="doi">10.1109/TCST.2025.3560511</idno>
					<title level='j'>IEEE Transactions on Control Systems Technology</title>
<idno>1063-6536</idno>
<biblScope unit="volume">33</biblScope>
<biblScope unit="issue">5</biblScope>					

					<author>Georgiy A Bondar</author><author>Robert Gifford</author><author>Linh Thi_Xuan_Phan</author><author>Abhishek Halder</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[Not Available]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In the real-time systems community, it is well-known <ref type="bibr">[1]</ref> that due to hardware-level stochasticity, multiple executions of the same software on the same hardware with identical initial conditions and parameters, result in different execution times. A common way to account for this is to analyze some lumped variable such as (worst case or probabilistic) execution time <ref type="bibr">[2]</ref>, <ref type="bibr">[3]</ref>, <ref type="bibr">[4]</ref> for a given software-hardware combination. In contrast, the ability to directly learn in the joint space of LLC, processor and memory availability, could enable the design of more fine-grained dynamic resource schedulers. This is of particular interest in safety-critical controlled cyber-physical systems that operate in resource-constrained environments because high-performance controllers [e.g., model predictive controller (MPC)] are more compute-intensive and have more pronounced stochasticity than computationally benign controllers [e.g., proportional-integral-differential (PID)].</p><p>Learning in the joint space, however, is technically challenging because variables such as processor availability, LLC, and memory bandwidth are not only statistically correlated, but their correlations also change over time, i.e., they cannot be assumed as (neither strict nor wide sense) stationary stochastic processes for learning purposes. It is also impractical to fit parametric statistical models such as a Markov chain by gridding the multidimensional space of computational resource state since the resource state space is not countable. In this work, we leverage the recent progress in multimarginal Schr&#246;dinger bridges to show the feasibility of nonparametric joint stochastic learning of computational resource usage from hardware-software profile data.</p><p>Related Works: Multimarginal Schr&#246;dinger bridge problems (MSBPs) are entropy regularized variants of the multimarginal optimal mass transport (MOMT) problems <ref type="bibr">[5]</ref>, <ref type="bibr">[6]</ref>. The latter has been applied to learning and inference problems in chemical physics <ref type="bibr">[7]</ref>, <ref type="bibr">[8]</ref>, team matching <ref type="bibr">[9]</ref>, fluid dynamics <ref type="bibr">[10]</ref>, and risk management <ref type="bibr">[11]</ref>. For recent applications of MSBPs to learning and tracking problems, see <ref type="bibr">[12]</ref>, <ref type="bibr">[13]</ref>, <ref type="bibr">[14]</ref>. The MSBPs can also be seen as generalized variants of the classical (also known as bimarginal) Schr&#246;dinger bridge problems (SBPs) which we will explain in Section IV-A. In the control literature, there are growing works on the stochastic optimal control interpretations <ref type="bibr">[15]</ref>, <ref type="bibr">[16]</ref>, generalizations <ref type="bibr">[17]</ref>, <ref type="bibr">[18]</ref>, <ref type="bibr">[19]</ref>, and applications <ref type="bibr">[20]</ref>, <ref type="bibr">[21]</ref>, <ref type="bibr">[22]</ref> of the SBPs.</p><p>Prior work has applied machine learning to performance prediction and workload modeling, especially in data center and cloud environments; e.g., the surveys in <ref type="bibr">[23]</ref> and <ref type="bibr">[24]</ref> and references therein. Unlike our work, these solutions focus on predicting coarse-grained characteristics-such as request rates, CPU utilization, memory and disk I/O usages, bandwidth, or energy consumption--and they do not consider the interdependent relationship among shared resources. In realtime and embedded systems, learning techniques have been used for estimating timing behaviors <ref type="bibr">[25]</ref>, <ref type="bibr">[26]</ref>, <ref type="bibr">[27]</ref>; however, existing work focuses on the worst case or probabilistic execution time of the entire software, rather than the dynamic resource usage patterns during the execution of the software. To the best of the authors' knowledge, our work is the first to use learning for predicting the stochastic dynamical runtime behavior of computational resource usage that jointly considers interdependent resources on multicore platforms (such as CPU, cache, and memory bandwidth) as well as multithreaded applications.</p><p>Contributions: This work builds on our preliminary work <ref type="bibr">[28]</ref> but significantly extends the same by considering multicore resources and more general graph structures than path trees. The specific contributions are threefold.</p><p>1) Mathematical formulations (Sections III and IV) for the stochastic learning of computational resource usage as graph-structured MSBPs where the graph structures arise from single-core or multicore computational platforms. These formulations are motivated by maximum likelihood interpretations in the path space. 2) Numerical algorithms (Section V) for solving the proposed graph-structured MSBPs. We show that unlike generic graph structures, the MSBPs induced by singlecore or multicore computational resource usage lead to structured tensor optimization problems that can be leveraged to reduce the learning algorithms' computational complexity from exponential to linear in number of observations. 3) Numerical experiments (Section VI) to illustrate the proposed learning framework. This includes a singlecore MPC benchmark and a synthetic multicore software benchmark.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>II. PRELIMINARIES</head><p>In this section, we fix notations and background ideas that will be used subsequently.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Sets</head><p>For any natural number &#957;, we use the finite set notation <ref type="bibr">[[&#957;]</ref>] := {1, 2, . . . , &#957;}. We denote the cardinality of set S as |S|. We will use the following.</p><p>Lemma 1 <ref type="bibr">[29,</ref><ref type="bibr">Th. 19.2]</ref>: Given finite sets S 1 &#8838; S 2 with</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Vectors, Matrices, and Tensors</head><p>We use unboldfaced (resp. boldfaced) small letters to denote scalars (resp. vectors). Unboldfaced capital letters denote matrices and bold capital letters denote tensors of order three or more. We occasionally make exceptions for standard notations such as (2) and <ref type="bibr">(3)</ref>.</p><p>We use square braces to denote the components. For example, [X i 1 ,...,i r ] denotes the (i 1 , . . . , i r )th component of an order r tensor X, where (i 1 , . . . , i r ) &#8712; N r . We use the r fold tensor product space notation (R d ) &#8855;r := R d &#8855; . . . &#8855; R d " &#402;&#8218; &#8230; r times . For two given tensors X and Y of order r, their Hilbert-Schmidt inner product is</p><p>The operators exp(&#8226;), log(&#8226;), , and are all understood elementwise, i.e., denote the elementwise exponential, logarithm, multiplication, and division, respectively. Vector or matrix transposition is denoted by the superscript . We use diag(v) to denote a diagonal matrix with entries of vector v along its main diagonal, and 1 to denote all one's column vector of suitable length.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Probability</head><p>A probability measure &#181; over some polish space X satisfies R X d&#181; = 1. For a pair of probability measures &#181; and &#957; defined over two polish spaces X and Y, respectively, their product measure is &#181; &#8855; &#957;, and</p><p>where (d&#181;/d&#957;) denotes the Radon-Nikodym derivative, and &#181; &#957; is a shorthand for "&#181; is absolutely continuous with respect to &#957;."</p><p>The Wasserstein distance W between two probability measures &#181; and &#957;, supported, respectively, on X , Y &#8838; R d , is</p><p>xy 2 2 d&#960;(x, y)</p><p>where the infimum in ( <ref type="formula">3</ref>) is over all joint couplings of &#181; and &#957;, i.e., &#928;(&#181;, &#957;)</p><p>Unlike the Kullback-Leibler divergence (2), the Wasserstein distance (3) is a metric on the space of probability measures.</p><p>1) Hilbert Projective Metric: The Hilbert projective metric <ref type="bibr">[30]</ref>, <ref type="bibr">[31]</ref>, <ref type="bibr">[32]</ref> </p><p>The convergence plots with respect to Hilbert metric for our numerical experiments will be given in Section VI. Formula (4) is a special case of the general definition of Hilbert metric d H between any two elements of a pointed<ref type="foot">foot_0</ref> convex cone K in a real vector space</p><p>Note that (5) reduces to (4) for K &#8801; R n &gt;0 .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>III. STOCHASTIC LEARNING OF COMPUTATIONAL RESOURCE</head><p>We collect distributional data for the computational resource availability state thought of as a continuous-time stochastic process over time &#964; &#8712; [0, t]. In what follows, we will make these ideas precise. For now, let us begin by assuming that the data are collected at s &#8712; N, s &#8805; 2 snapshots</p><p>Define the snapshot index set [[s]] := {1, 2, . . . , s}.</p><p>We consider multicore computing hardware with J &#8712; N cores and define the core index set [[J]] := {1, 2, . . . , J}. For j &#8712; [[J]] and for a given time horizon of interest [0, t], we think of the computational resource state vector &#958; j (&#964;), 0 &#8804; &#964; &#8804; t, as a continuous time R d -valued stochastic process.</p><p>For each j &#8712; [[J]], a (random) vectorial sample path &#958; j (&#964;) is referred to as a profile. For the single-core (J = 1) case, we drop the core index superscript j and simply denote the sample path or profile as &#958;(&#964;).</p><p>As a concrete example, consider the case</p><p>with the components of &#958; j as follows:</p><p>In this example, the three elements of &#958; j denote the number of CPU instructions, the number of LLC requests, and the number of LLC misses in the last time unit (e.g., in the last 10 ms if the profiling frequency is 100 Hz), respectively, in the core j &#8712; [[J]]. We will use this specific &#958; j &#8712; R 3 in our numerical experiments (both single core and multicore). However, we will develop the proposed stochastic learning framework for generic &#958; j &#8712; R d . This will allow generalizability in the sense that the proposed method can be adapted to an application at hand with a custom definition of the d &#8712; N components of the stochastic state &#958; j . The distributional (i.e., measure valued) observations collected at instances (6) comprise a sequence of joint state probability distributions or measures</p><p>In this work, we are interested in learning the hardware-level stochasticity, i.e., the stochasticity in the state &#958; j arises from dynamic resource variability. In other words, repeated execution of the same (e.g., control) software with the same initial condition and same parameters result in different profiles &#958; j (&#964;), and <ref type="figure">9</ref> as exemplar single-core and multicore profiles, respectively. Intuitively, when the hardware-level stochasticity is negligible, then the distributions &#181; j &#963; will be approximately Dirac deltas supported on the graph of a single path. When the stochastic variability is significant, &#181; j &#963; will have significant dispersion.</p><p>In practice, the probability measures {&#181; j &#963; } ( j,&#963;)&#8712;[[J]]&#215; <ref type="bibr">[[s]</ref>] are only available empirically from a fixed, say n &#8712; N profiles. Let the sample or profile index i &#8712; [[n]]. We accordingly set</p><p>where &#948;(&#958; j&#958; i, j (&#964; &#963; )) denotes the Dirac delta at the ith sample location &#958; i, j (&#964; &#963; ) &#8712; R d for a fixed index pair ( j, &#963;)</p><p>For any fixed pair ( j, &#963;)</p><p>With the basic notations in place, the informal statement for our stochastic learning problem is as follows.</p><p>Most Likely Distributional Learning Problem (Informal): Given distributional snapshots <ref type="bibr">(8)</ref>, predict the most likely distribution of the computational resource state</p><p>In Section IV, we will formalize this problem statement and discuss the related information graph structures.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. MSBP AND GRAPH STRUCTURES</head><p>To motivate the mathematical formulation, we start by outlining the classical (bimarginal) SBP in Section IV-A. Then, in Section IV-B, we make the informal statement mentioned at the end of the previous section rigorous using the framework of large deviation principle <ref type="bibr">[33]</ref>. The resulting MSBP formulation takes the form of a maximum likelihood problem in the space of probability measure-valued curves, generalizing a similar formulation for the classical SBP.</p><p>We then consider specific cases of this MSBP formulation which result from the information graph structures induced by the stochastic profiles in single-core and multicore computing hardware. In particular, Section IV-C details MSBP over a path tree which is the information graph structure that arises in the single-core profiling. For the multicore case, we discuss two different information graph structures in Sections IV-D and IV-E.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Classical SBP and Its Maximum Likelihood Iterpretation</head><p>In 1931 and 1932, Schr&#246;dinger <ref type="bibr">[34]</ref>, <ref type="bibr">[35]</ref> formulated which is now called the classical SBP, in two works: one written in German and another in French. For a relatively recent survey, see <ref type="bibr">[36]</ref>. The classical SBP corresponds to the bimarginal (i.e., s = 2) maximum likelihood problem: its solution finds the most likely measure-valued curve &#181; &#964; , where &#964; &#8712; [0, t] connecting the given endpoint measures &#181; 1 and &#181; 2 at &#964; 1 = 0 and &#964; 2 = t with respective supports over subsets of R d , see Fig. <ref type="figure">1(a)</ref>.</p><p>The classical SBP formulation proceeds as follows. Let X 1 , X 2 &#8838; R d be the supports of the given endpoint measures &#181; 1 and &#181; 2 , respectively. Letting X :=</p><p>) is a distance between the random vectors &#958;(&#964; 1 ), &#958;(&#964; 2 ). Let M(X ) be the manifold of joint probability measures on the product space X . For fixed but not necessarily small </p><p>In words, <ref type="bibr">(11)</ref> seeks to compute a joint probability measure that minimizes the entropy-regularized transportation cost (11a) subject to prescribed marginal constraints (11b) and (11c). Note that M(X ) is a convex set. The objective (11a) is strictly convex in M, thanks to the &#949;-regularized negative entropy term R X &#949; log M dM. Constraints (11b) and (11c) are linear.</p><p>To clarify the maximum likelihood interpretation of (11</p><p>and consider the bimarginal Gibbs kernel</p><p>Recall that the minimizer of problem ( <ref type="formula">11</ref>) is an optimal coupling M opt &#8712; M(X ). Proposition 1 next formalizes why the solution of ( <ref type="formula">11</ref>) corresponds to the most likely measure-valued path [Fig. <ref type="figure">1</ref>(a)] consistent with the observed measure-valued snapshots &#181; 1 and &#181; 2 . Its proof uses Sanov's theorem <ref type="bibr">[37]</ref>; for details, we refer the readers to the references below.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Proposition 1 (See [38, Sec. II] and [39, Sec. 2.1]):</head><p>The optimal coupling M opt &#8712; M(X ) in ( <ref type="formula">11</ref>) corresponds to the optimal measure-valued path &#960; opt &#8712; &#928;(&#181; 1 , &#181; 2 ) solving the (scaled) relative entropy minimization problem min</p><p>Remark 1 (Existence Uniqueness of the Solution for ( <ref type="formula">14</ref>)): Under the stated assumptions on the ground cost C, the existence of minimizer for ( <ref type="formula">14</ref>) is guaranteed <ref type="bibr">[40]</ref>, <ref type="bibr">[41]</ref>. The uniqueness of the minimizer follows from strict convexity of the map &#960; &#8594; D KL (&#960; &#957;) for fixed &#957;.</p><p>Remark 2: Intuitively, Proposition 1 links the solution of a static optimization problem <ref type="bibr">(11)</ref> with that of a dynamic optimization problem <ref type="bibr">(14)</ref> in the sense that the minimization in ( <ref type="formula">14</ref>) is performed over all continuous measure-valued curves connecting the endpoints &#181; 1 and &#181; 2 .</p><p>Our setting in <ref type="bibr">(10)</ref> requires generalizing these ideas for the multimarginal (s &#8805; 2) case discussed next.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. MSBP Formulation</head><p>In the single-core (J = 1) case, Fig. <ref type="figure">1(b</ref>) illustrates how the MSBP of our interest generalizes the classical, also known as bimarginal SBP, as shown in Fig. <ref type="figure">1(a)</ref>.</p><p>In general, for any J &#8712; N, we start by defining</p><p>the Cartesian product</p><p>and a ground cost C : X &#8594; R &#8805;0 . Let M(X ) be the manifold of probability measures on X , and for a fixed pair ( j, &#963;)</p><p>For a fixed &#949; &gt; 0, the MSBP, generalizes the bimarginal problem <ref type="bibr">(11)</ref> as follows:</p><p>The maximum likelihood interpretation for the bimarginal problem given in Proposition 1 generalizes for MSBP <ref type="bibr">(18)</ref> as stated next in Proposition 2. Similar to the case in Proposition 1, its proof is by direct computation and omitted. Proposition 2: Given the sets ( <ref type="formula">15</ref>) and ( <ref type="formula">16</ref>), ground cost C : X &#8594; R &#8805;0 and fixed &#949; &gt; 0, define</p><p>and the multimarginal Gibbs kernel</p><p>Then, the optimal coupling M opt &#8712; M(X ) in ( <ref type="formula">18</ref>) corresponds to the optimal measure-valued path &#960; opt &#8712; &#928;(&#181; 1 1 , . . . , &#181; J s ) solving the (scaled) relative entropy minimization problem min</p><p>The existence uniqueness of the minimizer for <ref type="bibr">(21)</ref>, and thus for <ref type="bibr">(18)</ref>, follows from the same strict convexity argument as in Remark 1.</p><p>Motivated by the maximum likelihood interpretation ( <ref type="formula">21</ref>) for <ref type="bibr">(18)</ref>, we propose to solve <ref type="bibr">(18)</ref> for learning the stochastic computational resource state <ref type="bibr">(10)</ref>. The minimizer of ( <ref type="formula">18</ref>), M opt (&#958; 1 (&#964; 1 ), . . . , &#958; J (&#964; s )) can be used to compute the optimal bimarginal probability mass transport plans between any ( j 1 , &#963; 1 ), (</p><p>where</p><p>The coupling <ref type="bibr">(22)</ref> will find use in implementing our multimarginal Sinkhorn recursions in Section V.</p><p>We next discuss the discrete formulations of ( <ref type="formula">18</ref>) that arise from the information graph structures in single-core and multicore computing hardware for finite scattered data</p><p>] as in <ref type="bibr">(9)</ref>. We will see that the corresponding formulations lead to strictly convex problems over finite dimensional nonnegative tensors. To reduce the notational overload, we use the same boldfaced symbols for the continuous and discrete versions of the tensors. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Path-Structured MSBP</head><p>For single-core (J = 1) computing hardware, the stochastic process &#958;(&#964;) is indexed only by time &#964; &#8712; [0, t]. Therefore, the information graph structure is also induced by time, i.e., by sequential in time measure-valued observations {&#181; &#963; } &#963;&#8712; <ref type="bibr">[[s]</ref>] . In other words, the information graph in this case is a path tree shown in Fig. <ref type="figure">2</ref>. We refer to an MSBP specialized to such path tree as the path-structured MSBP.</p><p>Thanks to the path tree structure, the ground cost C in this case can be written as follows:</p><p>where we choose the squared Euclidean distance sequential cost between two consecutive snapshot indices, i.e., c &#963; (&#8226;,</p><p>To formulate the discrete version of the corresponding MSBP, note that the ground cost in (18a), in general, is an order</p><p>that encodes the cost of transporting a unit amount of mass for an s tuple (i 1 , . . . , i s ). However, the path-structured cost <ref type="bibr">(23)</ref> implies that the s tuple in ( <ref type="formula">24</ref>) equal to P s-1 &#963;=1 c &#963; (&#958; i &#963; , &#958; i &#963;+1 ), which is a sum of suitable elements of s -1 different (in our case, Euclidean) distance matrices.</p><p>The discrete mass tensor M &#8712; (R n ) &#8855;s &#8805;0 has components M i 1 ,...,i s = M &#958; i 1 , . . . , &#958; i s <ref type="bibr">(25)</ref> where [M i 1 ,...,i s ] denotes the amount of transported mass for an s tuple (i 1 , . . . , i s ). Furthermore, for path-structured MSBP, we can drop the core index superscript j to simplify constraints (18b) as follows: Z</p><p>In the discrete version, the empirical marginals</p><p>Then, the LHS of constraints <ref type="bibr">(26)</ref> are projections of the mass tensor <ref type="bibr">(25)</ref> on the &#963;th marginal &#181; &#963; &#8704;&#963; &#8712; [[s]]. We denote this projection as proj &#963; (M), which is a mapping proj &#963; : (R n ) &#8855;s &#8805;0 &#8594; R n &#8805;0 , and is given componentwise as follows:</p><p>Similarly, the discrete version of ( <ref type="formula">22</ref>) in the path-structured case, is the projection of M &#8712; (R n ) &#8855;s &#8805;0 on the (&#963; 1 , &#963; 2 )th marginal denoted as proj &#963; 1 ,&#963; 2 (M), i.e., proj</p><p>&#8805;0 and is given componentwise as follows: Then, the discrete path-structured version of ( <ref type="formula">18</ref>) becomes min</p><p>Note that ( <ref type="formula">29</ref>) is a strictly convex problem in n s decision variables and is computationally intractable in general. In Section V, we will design algorithms to solve them efficiently.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>D. Barycentric (BC) MSBP</head><p>For multicore (J &gt; 1) computing hardware, the stochastic process &#958; j (&#964;) is indexed by both time &#964; &#8712; [0, t] and CPU core j &#8712; [[J]]. Thus, the information graph structure is induced jointly by time and cores, i.e., by measure-valued observations</p><p>. Unlike Section IV-C, we now have J measurevalued snapshots at each time index. To account for this, we propose two different MSBP formulations, the first of which termed BC MSBP is discussed next.</p><p>The main idea behind our proposed BC MSBP formulation is to imagine a phantom CPU core whose statistics is the average (i.e., barycenter) of the measure-valued snapshots for all cores at any fixed time index &#963; &#8712; [[s]]. Accordingly, in this formulation, we consider the core index j &#8712; {0} &#8746; [[J]] where j = 0 refers to the phantom BC CPU. The corresponding graph structure for J = 2 is shown in Fig. <ref type="figure">3</ref>. While a BC graph as shown in Fig. <ref type="figure">3</ref> is more general than the path tree as shown in Fig. <ref type="figure">2</ref>, we note that the treewidth <ref type="bibr">[42, pp. 354 and 355]</ref> for BC graphs equals unity as in the path tree case. It is known that the computational complexity for graph-structured MSBP problems grows with the treewidth <ref type="bibr">[43]</ref>, <ref type="bibr">[44]</ref>. We will discuss the specific complexity of the proposed algorithms in Section V.</p><p>The BC graph structure implies that ( <ref type="formula">24</ref>) is no longer equal to P s-1 &#963;=1 c &#963; (&#958; i &#963; , &#958; i &#963;+1 ) as shown in Section IV-C, but instead becomes a sum of two types of ground transport costs, viz., the cost of transport between consecutive-in-time barycenters and the cost of transport between BC and actual CPU cores. Denoting the BC random vectors as {&#958; 0 (&#964; &#963; )} &#963;&#8712;[[s]] , and letting c j,&#963; (&#8226;, &#8226;) be the corresponding ground transport costs for all j &#8712; {0} &#215; [[J]], the cost <ref type="bibr">(24)</ref> for BC MSBP equals</p><p>Similar ideas appeared in [12, Sec. 3.3] in a different context. Defining the BC index set</p><p>we note that |&#923; BC | = (J + 1)s, and thus for the BC MSBP, the tensors</p><p>. In summary, the proposed BC MSBP is min</p><p>In Section V-B, we will discuss the computation of projections (18b) and ( <ref type="formula">22</ref>) for the minimizer of ( <ref type="formula">31</ref>).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>E. Series-Parallel (SP) Graph-Structured MSBP</head><p>Different from the BC MSBP in Section IV-D, we now propose another MSBP formulation for the multicore (J &gt; 1) case, based on the SP information graph structure in Fig. <ref type="figure">4</ref>.</p><p>This SP graph-structured MSBP is motivated by the observation that many software on multicore computing hardware have notions of input and output terminals. In such applications, the input and output of the computational task are aggregated to a single core. Thus, the information graph structure is induced by measure-valued observations {&#181; j &#963; } ( j,&#963;) , where the tuple ( j, &#963;) belongs to the index set</p><p>Although the SP graph in Fig. <ref type="figure">4</ref> is not a tree, it has treewidth at most two. Therefore, such MSBPs remain computationally tractable as before (see details in Section V). Unlike the formulation in Section IV-D, the SP graphstructured MSBP formulation does not involve any phantom CPU core. From Fig. <ref type="figure">4</ref>, the cost (24) now equals</p><p>By Lemma 1, we find |&#923; SP | = J(s-2)+2, and hence for the SP graph-structured MSBP, the tensors C, M &#8712; (R n ) &#8855;J(s-2)+2 &#8805;0 . In summary, the proposed SP graph-structured MSBP is min</p><p>In Section V-C, we will discuss the computation of projections (18b) and ( <ref type="formula">22</ref>) for the minimizer of (33).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>V. ALGORITHMS</head><p>This section provides algorithmic details and computational complexities to solve the discrete MSBPs ( <ref type="formula">29</ref>), <ref type="bibr">(31)</ref>, and <ref type="bibr">(33)</ref>.</p><p>These MSBPs are strictly convex tensor optimization problems in n s , n (J+1)s , and n J(s-2)+2 decision variables, respectively, and computationally intractable in general. By leveraging an interplay between duality and graph structures, we will see that it is possible to reduce the computational complexity from exponential to linear in s.</p><p>Recognizing that ( <ref type="formula">29</ref>), <ref type="bibr">(31)</ref>, and ( <ref type="formula">33</ref>) are instances of the generic-structured optimization problem min</p><p>for suitable index set &#923; (see Table <ref type="table">I</ref>), the following is a consequence of strong Lagrange duality. Proposition 3 (See <ref type="bibr">[45]</ref>, <ref type="bibr">[46]</ref>, <ref type="bibr">[47]</ref>): Given problem (34), let &#955; j &#963; &#8712; R n be the Lagrange multipliers for the equality constraints (34b) for all ( j, &#963;) &#8712; &#923;. Let</p><p>Then, the multimarginal Sinkhorn recursions</p><p>have guaranteed linear rate of convergence, 2 and the minimizer M opt for <ref type="bibr">(34)</ref> is given in terms of the converged U as follows:</p><p>Once M opt is computed, its bimarginal projections of the form (28) yield the probability mass transport matrices between any two marginals. With this, we are able to interpolate between any two marginals to obtain a predicted distribution. 2 The proof sketch for discrete state space is as follows. The MSBP (34) can be recast <ref type="bibr">[45,</ref><ref type="bibr">Sec. 4</ref>.1] as a Kullback-Leibler projection to a convex set that is an intersection of |&#923;| hyperplanes given by (34b). That this iterative Kullback-Leibler projection has guaranteed convergence follows from the seminal result on iterative Bregman projection <ref type="bibr">[48]</ref> and from the fact that the Kullback-Leibler divergence is an instance of Bregman divergence. That the rate is linear follows from the coordinate descent analysis by <ref type="bibr">Luo</ref>  Remark 3: In our problem, the useful application of this interpolation is as follows: given a time &#964; &#8712; [0, t) and CPU index j &#8712; [[J]], find &#963; &#8712; [[s]] such that &#964; &#963; &#8804; &#964; &lt; &#964; &#963;+1 and use the expressions for the bimarginal projections above to compute the bimarginal bridge M j,&#963; := proj ( j,&#963;),( j,&#963;+1) (M opt ) :</p><p>Using this projection, we can interpolate between &#181; j &#963; and &#181; j &#963;+1 to obtain our estimate b &#181; j &#964; for the computational resource usage distribution for CPU j at time &#964;, as follows:</p><p>where b &#958; j (&#964;, &#958; r, j (&#964; &#963; ), &#958; &#8467;, j (&#964; &#963;+1 )) := (1&#955;)&#958; r, j (&#964; &#963; ) + &#955;&#958; &#8467;, j (&#964; &#963;+1 ), and</p><p>For numerically solving bimarginal SBPs (i.e., the case s = 2 and J = 1), the Sinknorn recursions <ref type="bibr">(36)</ref> have become the standard <ref type="bibr">[50]</ref>, <ref type="bibr">[51]</ref>, <ref type="bibr">[52]</ref>, <ref type="bibr">[53]</ref>. However, applying the same is challenging for MSBPs because computing proj ( j,&#963;) (K U) requires O(n |&#923;| ) operations. The same issue arises for computing proj ( j 1 ,&#963; 1 ),( j 2 ,&#963; 2 ) (K U). For both projections, this complexity can be reduced by exploiting the structure of the Hilbert-Schmidt inner product K, U . Specifically, we make use of the following results from <ref type="bibr">[12]</ref>.</p><p>Lemma 2: Let the tensor U be as in (35c), and consider a tensor K &#8712; (R n ) &#8855;|&#923;| .</p><p>1) [12, <ref type="bibr">Lemma 1]</ref>: For a fixed ( j, &#963;) &#8712; &#923;, if K, U = w 1 diag(u j &#963; )w 2 for some vectors w 1 , w 2 &#8712; R n that do not depend on u j &#963; , then</p><p>2) [12, <ref type="bibr">Lemma 2]</ref>: For fixed ( j 1 , &#963; 1 ), ( j 2 , &#963; 2 ) &#8712; &#923;, if K, U = w 1 diag(u j 1 &#963; 1 )&#934;diag(u j 2 &#963; 2 )w 3 for some vectors w 1 , w 3 &#8712; R n and matrix &#934; &#8712; R n&#215;n , where w 1 , &#934;, and w 3 do not depend on u j 1 &#963; 1 and u j 2 &#963; 2 , then</p><p>The special inner product structures in Lemma 2 arise from structured tensors K which are in turn induced by the graph structures discussed earlier. Thus, expressing K, U in the appropriate forms helps compute the desired projections. Below, we show how the imposition of structure on K allows this to be done efficiently.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Projections for Path-Structured MSBP</head><p>For software running on a single-CPU core, we have J = 1 as in Section IV-C. The corresponding MSBP is <ref type="bibr">(29)</ref>. Here, the cost tensor C in (24) has a path structure</p><p>where the matrix C &#963; &#8712; R n&#215;n &#8805;0 encodes the cost of transporting unit mass from {&#958; i (&#964; &#963; )} n i=1 to {&#958; i (&#964; &#963;+1 )} n i=1 . This allows us to write K in (35a) as follows:</p><p>which leads to the following expressions for the marginal projections. Proposition 4 (See [12, Proposition 2] and [28, Proposition 1]): If C has the form (39), K &#963; := exp(-C &#963; /&#949;) &#8712; R n&#215;n &#8805;0 , K as in <ref type="bibr">(40)</ref>, and U as in (35c); then, ( <ref type="formula">27</ref>) and ( <ref type="formula">28</ref>) can be expressed as follows:</p><p>and proj</p><p>Observe that even the Na&#239;ve computation of ( <ref type="formula">41</ref>) is dominated by 2s -4 matrix-vector multiplications (by cancellation, <ref type="bibr">(36)</ref> can be computed by s -1 such multiplications, see <ref type="bibr">[28,</ref><ref type="bibr">Remark 3]</ref>). Since such multiplications have O(n 2 ) complexity, each Sinkhorn iteration has O((s-1)n 2 ) complexity-linear in s, and a great improvement from the general O(n s ) complexity of the method. Our method's O((s -1)n 2 ) complexity is sharp for exact computation. The recent work <ref type="bibr">[54]</ref> reduces the complexity in n from quadratic to linear at the expense of approximate computation.</p><p>Remark 4: While it is clear from their expressions that the bimarginal projection <ref type="bibr">(42)</ref> has similar order-of-magnitude complexity to the unimarginal projection <ref type="bibr">(41)</ref>, hereafter we focus only on the complexity of the latter, as these are performed every Sinkhorn iteration until the method converges. Following this, bimarginal projections of the solution M opt onto each pair of marginals of interest are to be performed only once a posteriori, and so exact floating-point operational count for these projections is not critical.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Projections for BC MSBP</head><p>For software running on multiple CPU cores, we have J &gt; 1. The corresponding BC MSBP <ref type="bibr">(31)</ref> formulated in Section IV-D involves a tree that is more general than a path.</p><p>In this section, we let n 0 denote the number of samples in the BC CPU. For the sake of generality, here we derive the complexity for the projections in terms of n and n 0 . Then,</p><p>For n 0 n, formulation ( <ref type="formula">34</ref>) and ( <ref type="formula">35</ref>) applies mutatis mutandis.</p><p>Recall that here the index set &#923; = &#923; BC as in <ref type="bibr">(30)</ref>. The cost tensor C for BC MSBP takes the form</p><p>where the matrices C 0,&#963; &#8712; R n 0 &#215;n 0 &#8805;0 are the ground cost matrices between barycenters &#958; 0 (&#964; &#963; ) and &#958; 0 (&#964; &#963;+1 ) for &#963; &#8712; [[s -1]], whereas C j,&#963; &#8712; R n 0 &#215;n &#8805;0 are those between the CPU marginals &#958; j (&#964; &#963; ) and their barycenters &#958; 0 (&#964; &#963; ), for ( j, &#963;)</p><p>. So now, we can write K in (35a) as follows:</p><p>With this, the projections can be computed as follows (proof in Appendix A).</p><p>Proposition 5: If C has the form ( <ref type="formula">43</ref>), K j,&#963; := exp(-C j,&#963; /&#949;), K as in <ref type="bibr">(44)</ref>, and U as in (35c), then the projections ( <ref type="formula">27</ref>) and ( <ref type="formula">28</ref>) can be expressed as follows:</p><p>Authorized licensed use limited to: Iowa State University. Downloaded on December 03,2025 at 09:28:11 UTC from IEEE Xplore. Restrictions apply.</p><p>where</p><p>Similar to the single-core case in Section V-A, the computational complexity for all projections in Proposition 5 are linear in J and s. Specifically, the computation of the s p &#963; vectors in Proposition 5 requires a total of Js matrixvector multiplications, and the total number of floating-point operations when projecting onto a barycenter [as shown in (45a)] is</p><p>The number of floating-point operations when projecting onto a non-BC marginal [as shown in (45b)] is</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Projections for SP Graph-Structured MSBP</head><p>The SP graph-structured MSBP <ref type="bibr">(33)</ref> formulated in Section IV-E involves an SP graph which is not a tree. Recall that the corresponding index set &#923; = &#923; SP as in <ref type="bibr">(32)</ref>. For any fixed j &#8712; [[J]], let</p><p>Then, the cost tensor C for SP graph-structured MSBP takes the form</p><p>where each C j &#8712; (R n ) &#8855;s &gt;0 is the path-structured cost tensor along the jth CPU's path, i.e., h</p><p>wherein the matrices C j,1 &#8712; R n&#215;n &#8805;0 are the ground cost matrices between marginals &#958; 1 (&#964; 1 ) and &#958; j (&#964; 2 ) for j &#8712; [[J]], and similarly C j,s-1 maps between &#958; j (&#964; s-1 ) and &#958; 1 (&#964; s ). When &#963; &#8712; [[s-2]]\{1}, the matrices C j,&#963; map between &#958; j (&#964; &#963; ) and &#958; j (&#964; &#963;+1 ).</p><p>Consequently, we write K in (35a) as follows:</p><p>and the associated projections can be expressed as follows (proof in Appendix B). Proposition 6: If C has the form (49), K j,&#963; := exp(-C j,&#963; /&#949;), K as in <ref type="bibr">(51)</ref>, and U as in (35c), then letting</p><p>and</p><p>, projection <ref type="bibr">(27)</ref> takes the form</p><p>where ( j, &#963;) &#8712; S k&#8712;[[J]] &#923; k SP in (53c). Furthermore, projection (28) can be expressed as follows:</p><p>Directly computing A k in (52) requires 1 + 2(s -2) matrixmatrix multiplications, each in this case involving n 3 floatingpoint operations. Thus, (53a) and (53b) each involve</p><p>operations, and (53c) involves</p><p>operations.</p><p>Remark 5: For n 0 = n, s &#8805; 2, J &#8805; 2, we note that the expression (48) = (Js + 2s)n 2 + (Js + 4)n &#8805; 8n 2 + 8n.</p><p>In contrast, expression (56)= (2Js -3J + 3)n<ref type="foot">foot_2</ref> + (J -1)n 2 + n &#8805; n 3 + n 2 + n. Thereby for n large, Propositions 5 and 6 enable computation of unimarginal projections with O(Jsn 2 ) complexity for the BC case, and O(Jsn 3 ) for the SP case. The n 3 complexity of the latter is a consequence of the treewidth (=2) of the SP graph structure. Both cases have complexity linear in Js.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>D. Overall Algorithm</head><p>Having shown that the computation of the projections is tractable in the number of marginals, we are able to efficiently solve <ref type="bibr">(29)</ref> for all of our proposed graph structures: path, BC, and SP. In applying MSBP for computational resource prediction, the choice of problem graph structure can affect the quality of the prediction. For single-core software, all graph structures necessarily degenerate to the path structure. But for multicore software, there are two structurally distinct options: BC and SP. In Section VI, we evaluate the merits of these structures.</p><p>Regardless of the choice of graph structure, our overall methodology is as follows.</p><p>Step 1: Execute the software of interest n times over [0, t], generating hardware resource state snapshots</p><p>Our marginal distributions &#181; j &#963; are then as per <ref type="bibr">(9)</ref>.</p><p>Step 2: Pick an appropriate graph structure (path, BC, or SP). From the marginals in Step 1, construct the bimarginal Euclidean distance matrices C j,&#963; . If the BC structure is used, compute the barycenters &#181; 0 &#963; . Run the Sinkhorn recursion (36) until convergence, i.e., until the Hilbert projective metric (4) between the new and old u j &#963; is less than some numerical tolerance for all marginals. The resulting M opt given by <ref type="bibr">(37)</ref> is the solution for our MSBP.</p><p>Step 3: Given any time &#964; &#8712; [0, t) and CPU index j, use (38) to predict our estimate b &#181; j &#964; for the hardware resource usage distribution of CPU j at time &#964;.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>VI. EXPERIMENTS</head><p>In Sections IV and V, we explained how to formulate and efficiently solve graph-structured MSBPs to compute the optimal mass transport plan M opt between marginal distributions (9) which in our application correspond to the statistics of computational resource usage at times <ref type="bibr">(6)</ref>.</p><p>In Remark 3, we outlined how the computed M opt can be used to make predictions on a software's resource usage at any (possibly out of sample) given time. To evaluate the quality of these predictions, in this section, we perform two experiments: one with a single-core software and one with a multicore software. We quantify the quality of our predictions against known resource usage data.</p><p>For all experiments herein, benchmark programs were profiled on an Intel Xeon E5-2683 v4 processor with 16 cores and a 40-MB LLC running Ubuntu 16.04.7. We leveraged Intel's Cache Allocation Technology (CAT) <ref type="bibr">[55]</ref> and Memguard <ref type="bibr">[56]</ref> to control the amount of LLC and memory bandwidth available to the benchmark programs.</p><p>The implementation of the algorithms described in Section V, the solution of the MSBP (34) itself, and all other processing of profiled data, were done in MATLAB R2019b on a Debian 12 Linux machine with an AMD Ryzen 7 5800&#215; CPU.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Single-Core Experiment</head><p>For this experiment, we used a custom single-core software 3  which we wrote in C language, implementing a path-following nonlinear model predictive controller (NMPC) for a kinematic bicycle model (KBM) <ref type="bibr">[21]</ref>, <ref type="bibr">[57]</ref>. At each control step, the NMPC used the IPOPT nonlinear program solver <ref type="bibr">[58]</ref> to determine the control decision which minimizes the sum of various measurements of the deviation from the desired path while promoting smoothness of the control inputs. For details on this control software, we refer the readers to [28, Sec. V].</p><p>1) Profiling: To gather the execution profiles for our NMPC control software, we ran our application on an isolated CPU and used the Linux perf tool <ref type="bibr">[59]</ref>, version 4.9.3, to sample the computational resource state vector &#958; as in (7) every 10 ms.</p><p>For each profile, we ran the NMPC software for n c := 5 control steps with a fixed reference trajectory and a fixed combination of LLC and memory bandwidth partitions (30 MB and 30 MB/s, respectively, both allocated in blocks of 2 MB) to ensure a fixed execution context.</p><p>For our chosen context, we profiled the controller n := 500 times. Fig. <ref type="figure">5</ref> overlays all of the profiles, split into its three components as per <ref type="bibr">(7)</ref>.</p><p>2) Numerical Results: To account for the asynchrony among the profiles, we analyzed the statistics of the control cycle end times, i.e., the (random) times needed to complete one pass of the NMPC feedback loop. For details, we refer the readers to [28, Fig. <ref type="figure">4</ref> and <ref type="figure">Table I</ref>]. We then consider snapshots of the profiling data at times corresponding to the average control cycle end times as well as at s int equispaced intervals between control cycles. This results in s = 1 + n c (s int + 1) total marginals forming our path-structured MSBP (29) and completes Step 1 in Section V-D.</p><p>Setting the regularizer &#949; = 0.1 and a numerical tolerance of 10 -14 , we solve the discrete path-structured MSBP <ref type="bibr">(29)</ref> with squared Euclidean cost C as in <ref type="bibr">(39)</ref>. Fig. <ref type="figure">6</ref> depicts the linear convergence of the Sinkhorn iterations (as in Proposition 3) shown with respect to the Hilbert metric (4). The path structure of the problem yields efficient computation of the Sinkhorn iterations leading to rapid convergence. In particular, setting s int := 4 (and so s = 26), we solve the MSBP <ref type="bibr">(29)</ref> with n s = 500 26 decision variables in approx. 10 s and &#8776;120 Sinkhorn iterations with no optimizations to the code. Note that problems of this size are impractical to load in memory, let alone to solve efficiently using off-the-shelf solvers. This completes Step 2 in Section V-D.</p><p>For   TABLE II FOR THE SINGLE-CORE EXPERIMENT IN SECTION VI-A, THE NUMBER OF INTRACYCLE MARGINALS s int VERSUS WASSERSTEIN DISTANCES W b &#963; AS IN (57) duration of the third control cycle, i.e., between &#964; 2(s int +1)+1 and &#964; 3(s int +1)+1 , with b &#964; b &#963; = &#964; 2(s int +1)+1 + &#194; &#964; 3(s int +1)+1&#964; 2(s int +1)+1 s int + 2 &#195; b &#963; where the index b &#963; &#8712; [[s int + 1]]. Since b &#964; b &#963; &#8712; [&#964; 2(s int +1)+b &#963; , &#964; 2(s int +1)+b &#963;+1 ], we used (38) with &#963; = 2(s int + 1) + b &#963; to arrive at the predictions.</p><p>In Fig. <ref type="figure">7</ref>, we compare our predictions against the observed empirical distributions. Fig. <ref type="figure">7</ref> shows that our predictions capture the mode(s) of the measured distributions quite well. Further improvements can be made by placing marginals closer together in time. In this experiment, we do this by increasing the value of s int , i.e., by placing more marginals equispaced between control cycle  boundaries. In Table <ref type="table">II</ref>, we report the Wasserstein distances W(&#8226;, &#8226;) as in (3) between the corresponding predicted and measured distributions We computed <ref type="bibr">(57)</ref> as the square roots of the optimal values of the corresponding Kantorovich linear programs [60, Ch. 3.1] that results from specializing <ref type="bibr">(29)</ref> with s = 2 and &#949; = 0. As expected, placing the marginals closer together in time results in higher accuracy in predictions.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Multicore Experiment</head><p>For this experiment, we used the Canneal benchmark from the PARSEC suite <ref type="bibr">[61]</ref>. Canneal is a resource heavy, multithreaded application that simulates an anneal workload to minimize routing costs for chip design. Specifically, Canneal pseudorandomly picks pairs of input elements to swap in a tight loop, leading to a heavy reliance on both cache and memory bandwidth. This can be seen from Fig. <ref type="figure">8</ref>, where the average number of LLC misses decreases as the cache size increases. The dashed vertical lines represent the cache allocation used in our profiling.</p><p>1) Profiling: To enable multicore profiling, we made a small modification to Canneal's source code to pin each created thread to its own core. We then use perf, as with the single-core experiment, to sample the computational resource state &#958; j , j &#8712; [[J]], as in <ref type="bibr">(7)</ref> for every 10 ms.</p><p>Desiring to examine how Canneal behaves when its resource allocation varies across its cores, we profile using a single context defined by J = 4 cores, and resource allocations of (24, 10, 4, 2) MB/s of LLC and (125, 25, 5, 1) MB/s of memory bandwidth, ordered left-to-right by increasing CPU number. Therefore, CPU 1 has the highest resource allocation while CPU 4 has the lowest. For this choice of context, we collected a total of n = 400 profiles for the Canneal software; these profiles are shown in Fig. <ref type="figure">9</ref>. For the BC formulation, we fix n 0 = 600.</p><p>2) Numerical Results: We placed snapshots at times &#964; &#963; &#8712; {0.0, 0.5, 1.5, 2.5, 5.0, 9.5, 10.5} (so s = 7) and interpolated at times b &#964; b &#963; &#8712; {0.8, 2.2, 7.0, 9.0, 10.0} (so b &#963; &#8712; [[5]]). Both BC and SP methods were then used to solve the MSBPs (31) and <ref type="bibr">(33)</ref>, respectively, therefrom we used <ref type="bibr">(38)</ref> to estimate the resource usage distributions at the desired times.</p><p>Once again, the code for solution of ( <ref type="formula">31</ref>) and ( <ref type="formula">33</ref>), including the computation of the projections in Propositions 5 and 6, were implemented in MATLAB with some minor optimizations due to the large size of the problem (the BC and SP formulations have 400 35 and 400 22 decision variables, respectively; see Section V). TABLE III WASSERSTEIN DISTANCES (58) BETWEEN THE MEASURED DISTRIBU-TIONS AND THOSE PREDICTED IN THE BC CASE (TOP) AND SP CASE (BOTTOM) FOR THE CANNEAL BENCHMARK IN SECTION VI-B AT EACH &#964;b &#963;&#8712;[[5]]</p><p>With the regularizer &#949; = 0.05 and a numerical tolerance of 10 -13 , the BC and SP algorithms converged in 0.4810 and 0.5055 s, with 110 and 127 iterations, respectively (see Fig. <ref type="figure">10</ref>). The predicted distributions, marginalized to each component of &#958; j , j &#8712; [[J]], are shown in Fig. <ref type="figure">11</ref>. Finally, Table <ref type="table">III</ref> lists the comparison of the Wasserstein distances of the predicted distributions for each CPU from those measured from our profiles, i.e.,</p><p>These figures show the same behavior as in the singlecore experiment-primarily, that our predictions accurately capture the mode(s) of the resource usage distribution at all interpolation times. Note that at b &#963; = 1 and b &#964; b &#963; = 0.8, all CPUs except the CPU 1 are idle. Our predictions match the measured distribution exactly for the CPUs 2-4 (i.e., the Dirac delta at 0 for all components), but not so for CPU 1, which has a nontrivial distribution.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>VII. CONCLUSION</head><p>This work explores a new vision for learning and predicting stochastic time-varying computational resource usage from hardware-software profile data in both single-core and multicore platforms. We propose to formulate the problem as a distributional learning problem directly in the joint space of correlated computational resources such as processor availability and memory bandwidth. This leads to graph-structured MSBPs, where the specific graph structures are induced by underlying singl-core or multicore nature of computation. At first glance, such formulations for scattered profile data appear computationally intractable because they involve tensorial convex optimization problems where the number of primal variables is exponential in the number of observational snapshots. By leveraging strong duality and graph structures, we show that the computational complexities can be reduced from exponential to linear without approximation, and these problems can in fact be solved efficiently via nonparametric computation with maximum likelihood guarantees in the space of distributions. This enables us to predict the most likely joint (and hence all marginal) computational resource usage distribution at any user-specified query time. We emphasize that our proposed algorithms and the benchmark results reported here, directly work with the scattered profile data without gridding the joint space of computational resource (here, instructions retired, LLC requests, and LLC load misses). For the singlecore case, we illustrate the computational details for an NMPC benchmark. For the multicore case, we provide the results for a benchmark software from real-time systems literature.</p><p>The learning-scheduling co-design that builds on the proposed method, will comprise our future work. Another direction of interest is to account for the asynchronous nature of the profiles by formulating the corresponding MSBPs with joint space-time stochasticity, i.e., as a distributional generalization of optimal stopping problems initiated in the recent work <ref type="bibr">[62]</ref>. Our multimarginal formulation also opens up the possibility to incorporate additional flow rate constraints as in <ref type="bibr">[63]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>APPENDIX</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Proof of Proposition 5</head><p>With K as in <ref type="bibr">(44)</ref> and U as in (35b), consider the Hilbert-Schmidt inner product K, U = ! K 0,s-1 p s <ref type="bibr">(60)</ref> where <ref type="bibr">(59)</ref> follows by the same argument as for Proposition 4 (see also <ref type="bibr">[28,</ref><ref type="bibr">Proposition 1]</ref>). Then, the unimarginal projections (45a) and (45b) follow by applying Lemma 2 to <ref type="bibr">(60)</ref>.</p><p>For the bimarginal projections, let ( j, &#963;) &#8712; [[J]] &#215; [[s]] and &#963; 1 , &#963; 2 &#8712; [[s]] such that &#963; 1 &lt; &#963; 2 . Starting with (59), we have</p><p>= p 1 K 0,1</p><p>Authorized licensed use limited to: Iowa State University. Downloaded on December 03,2025 at 09:28:11 UTC from IEEE Xplore. Restrictions apply.</p><p>&#8226;</p><p>Then, (46a) follows from <ref type="bibr">(61)</ref>, and (46b) follows from expanding diag( p &#963; 1 ) and diag( p &#963; 2 ) in ( <ref type="formula">62</ref>), followed by the application of Lemma 2.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Proof of Proposition 6</head><p>With K as in <ref type="bibr">(51)</ref> and U as in (35b), we start with the Hilbert-Schmidt inner product K, U = = trace diag(u 1 1 ) X j &#963; diag(u j &#963; )Y j &#963; diag(u 1 s )B j = 1 diag diag(u j &#963; )Y j &#963; diag(u 1 s )B j diag(u 1 1 )X j &#963; = 1 "&#402;&#8218;&#8230;</p><p>where from projections (53a) and (53b) follow by applying Lemma 2 to <ref type="bibr">(63)</ref>. Similarly, (53c) follows by applying Lemma 2 to (64).</p><p>Next, for the bimarginal projections, we write</p><p>where w 1 = w 3 = 1. Now, (54a) follows from (65); (54b) from (66); and (54c) from (67).</p></div><note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0"><p>A cone K is pointed if K &#8745; -K = {0}.Authorized licensed use limited to: Iowa State University. Downloaded on December 03,2025 at 09:28:11 UTC from IEEE Xplore. Restrictions apply.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_1"><p>Authorized licensed use limited to: Iowa State University. Downloaded on December 03,2025 at 09:28:11 UTC from IEEE Xplore. Restrictions apply.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2"><p>Github repository: https://github.com/abhishekhalder/CPS-Frontier-Task3-Collaboration</p></note>
		</body>
		</text>
</TEI>
