\section{Introduction}

\begin{figure}[h]
\centering
\fbox{
\includegraphics[width=0.95\columnwidth,trim={0.5cm 0cm 0cm 0cm}]{figures/QISMET_Graph4.pdf}}
\caption
Optimal VQA is obtained in the ideal noise-free scenario (orange). In reality, VQA is affected by static and transient noise, and estimates can be much worse than ideal (red). QISMET (green) attempts to avoid significant transient error and thereby reaches close to the otherwise unrealistic blue line with only static noise.
}
\label{fig:qismet_graph}
\end{figure}

Quantum computers leverage superposition, interference, and entanglement to give them significant computing advantage in chemistry~\cite{kandala2017hardware}, optimization~\cite{moll2018quantum}, machine learning~\cite{biamonte2017quantum} and other domains of critical interest.
In near-term quantum computing, called Noisy Intermediate-Scale Quantum (NISQ), we expect to work  with  machines which comprise 100-1000s of imperfect qubits ~\cite{preskill2018quantum}.

Today, noise prevents quantum computers from surpassing the capabilities of classical computers in almost all applications.
NISQ devices suffer from high error rates in the form of state preparation and measurement (SPAM) errors, gate errors, qubit decoherence, crosstalk, etc.
These errors stem from multiple noise sources such as the imperfect classical control of the device, thermal fluctuations, destructive qubit coupling, imperfect insulation of the qubits, quasi-particles, and other external stimuli~\cite{muller2019towards,martinis2005decoherence,burnett2019decoherence,schlor2019correlating,Klimov_2018}.
The dynamic nature of quantum systems causes these noise sources to constantly vary over time, with some noise sources experiencing greater transient fluctuations than others. Additionally, because current fabrication techniques lack the precision to make homogeneous quantum device batches, the transient noise properties are unique to each device.

Effectively understanding and mitigating different forms of error is critical for quantum advantage in real-world applications.
Multiple error mitigation techniques have been explored on NISQ devices in the recent past~\cite{murali2019noise,tannu2019not,murali2020software,ding2020systematic, smith2021error,viola1999dynamical,pokharel2018demonstration, souza2012robust,temme2017error,li2017efficient,giurgica2020digital,tannu2019mitigating,bravyi2021mitigating}.
While these techniques have the potential to greatly improve execution fidelity, they almost always view machine noise as static, or at least expect the noise to be stable for sufficiently long periods of time such that their characteristics can be adequately captured, appropriately characterized, and then effectively mitigated.
Unfortunately, this is often insufficient - in this work we show that the transient errors from the dynamic noise landscape are challenging to comprehend and are especially detrimental to classes of applications that are iterative and/or long-running, and therefore their timely mitigation is important for significant fidelity improvements.
\textcolor{black}{ }\textcolor{black}{Here, we use the term `transient error' to refer to a temporary change in a quantum circuit’s output distribution produced due to sudden non-insignificant shift in device characteristics of one or more qubits in the quantum circuit
~\cite{burnett2019decoherence,Klimov_2018,schlor2019correlating}. The effect of these transient errors is seen beyond the statistical robustness offered by executing multiple circuit shots (which are required to capture probabilistic output distributions). }

The most popular examples of iterative long-running quantum applications are variational quantum algorithms (VQAs).
VQAs are considered one of the most promising quantum tasks for near-term quantum advantage in the NISQ era.
They have wide application in approximation~\cite{moll2018quantum}, chemistry~\cite{peruzzo2014variational} etc, which are usually designed as minimization problems.
VQAs are hybrid quantum-classical algorithms and they iteratively run a parameterized quantum circuit (QC) on the quantum machine.
The QC parameters are optimized each iteration by a classical tuner / optimizer to try and approach the global minimum of the variational objective function.
The classical optimizer inherently attempts to adjust the QC to the noise characteristics of the quantum device, and hence, \emph{in theory}, gives VQAs the potential for quantum advantage even on noisy machines.

Transient errors can be severely detrimental to VQAs.
Iteratively, the VQA tuner estimates gradients of some form~\cite{9259985} across multiple circuit candidates to choose the best set of VQA parameters for further tuning.
The VQA tuner works under the underlying assumption that the noise landscape of the device is unchanged during this gradient estimation process across the candidates.
This is often not the case. Noise fluctuation can cause a significant transient impact on the objective function estimation of one or more candidates, and this can severely affect gradients and therefore the accuracy and convergence of VQA.

This discrepancy between VQA's ideal and reality is illustrated in Fig.\ref{fig:qismet_graph}.
The orange line shows the scenario with no noise, which is unrealistic (unless noise is entirely mitigated).
The goal is to follow this line as close as possible during VQA evaluation.
The blue line shows VQA estimations if only static noise was present (this could potentially encompass dynamic noise that varies at very coarse temporal granularity).
This is again unrealistic, but most prior error mitigation and optimization proposals have focused primarily on this setting, attempting to lower this blue line to bring it closer to orange, achieving considerable benefits.
The reality is represented by the red line which shows that VQA estimations are affected by both static as well as transient noise - traditional VQA optimizations can be less effective in dealing with transients.

This paper proposes \emph{QISMET: \underline{Q}uantum \underline{I}teration \underline{S}kipping to \underline{M}itigate \underline{E}rror \underline{T}ransients}, to navigate the dynamic noise landscape of VQA. QISMET tries to eliminate the effect of VQA transient errors to the maximum extent possible - lowering the red line in Fig.\ref{fig:qismet_graph} to bring it  close to the blue line (shown in green).
Other error mitigation techniques can be added orthogonally to bring the blue line (and by extension QISMET's green line) closer to the orange ideal scenario.

QISMET is built with three key insights:
\circled{1} QISMET identifies a key capability in VQAs: a previous VQA iteration acts as an optimal reference circuit to estimate the effect of transient errors on a current VQA iteration. To utilize this, the current execution block reruns the reference circuit from the previous iteration, and the difference between the VQA outcomes is estimated.
\circled{2}\ Using traditional per-iteration gradient calculation, combined with QISMET's novel transient error estimation, QISMET is able to predict an estimate of the transient-free gradient for every iteration.
\circled{3}\ Finally, QISMET designs a controller to decide if a particular iteration is acceptable to VQA or not. A VQA iteration is accepted only if the direction of the observed VQA gradient from the machine loosely matches the direction of the predicted transient-free gradient (relative to the previous iteration). In other words, a new set of VQA parameters is accepted only if the machine estimation of the parameters being good or bad, relative to the current parameters, matches the predicted transient-free estimation of the same (within some margin of error).

\iffalse
\textcolor{purple}{TODO: }\textcolor{purple}{Consider removing this para}
Of specific interest to classical computing audience: we note that there is a wealth of prior classical computing work, especially in signal processing, to eliminate noisy samples from collected data~\cite{CFAR,kalman}.
A fundamental requirement in many of these techniques is a large number of collected samples and an assumption of stable dynamism over a reasonable period of time (for validity of the samples).
Unfortunately, the number of quantum samples is very limited due to time, resource and monetary constraints.
Further, as per the current understanding of quantum devices, the transient noise dynamism is largely non-deterministic and constantly varying over fine granularities of time.
Thus, we do not find direct portability of classical approaches to the quantum world, motivating the minimal sample QISMET approach.
This is discussed further in Section \ref{RW}.
\fi

\vspace{0.1in}
\textbf{\emph{Contributions and Results:}}

\circled{1}\ To the best of our knowledge, this work is among the first to study the effects of transient errors on VQAs.

\circled{2}\ This paper proposes QISMET, which actively avoids instances of high fluctuating noise which have a significant transient error impact on specific VQA iterations and can severely impact VQA accuracy and convergence.

\circled{3}\ To achieve this, QISMET estimates transient error in VQA iterations and designs a controller to keep the VQA iteration gradients faithful to the transient-free scenario.

\circled{4}\ By doing so, QISMET efficiently mitigates a large portion of the effects of transient noise on VQAs and is able to improve the fidelity of VQAs by 1.3x-3x over a traditional VQA baseline, across different applications and machines, \textcolor{black}{ }\textcolor{black}{with 1.6-2.4x improvement over alternative approaches}.

\iffalse
\circled{5}\ To diligently analyze the effects of transients, this work also builds transient error noise models for target VQA applications from observing real device transients. These are then integrated with the Qiskit simulator.
\fi

\section{Background}

\iffalse
\noindent \emph{\textbf{Quantum Information:}}

\label{b_QI}
A qubit can exist in a linear superposition of the basis states $\ket{0}$ and $\ket{1}$, taking the form of $\ket{\psi}=\alpha\ket{0}+\beta\ket{1}$.
Together with other QC capabilities, this gives rise to the potential for quantum computers to exponentially outperform classical computers in certain applications.
Qubits are manipulated through gates that modify their probability amplitudes, i.e. the coefficients of $\ket{0}$ and $\ket{1}$.
There are many non-trivial single-qubit gates that can modify qubit state.
Pairs of qubits can be manipulated via multi-qubit interactions such as the two-qubit controlled-$X$, or $CX$ gate.
Together, these enable universal quantum computation.
\fi

\emph{\textbf{Noise in the NISQ era:}}
\label{b_NISQ}
NISQ devices are error-prone and up to around 100 qubits in size today~\cite{preskill2018quantum}.
These devices are extremely sensitive to external influences and require precise control, and as a result, some of the biggest challenges that limit scalability include limited coherence, gate errors, readout errors, and connectivity.
We will dive deeper into different noise sources and errors in Section \ref{motive}.
Multiple forms of error mitigation strategies have been proposed to correct different forms of quantum errors.
These include, but are not limited to, noise aware compilation~\cite{murali2019noise,tannu2019not};  correcting measurement errors~\cite{tannu2019mitigating,bravyi2021mitigating}; scheduling for crosstalk~\cite{murali2020software,ding2020systematic}; extrapolating for zero noise~\cite{giurgicatiron2020digital,li2017efficient,temme2017error, zne4}; decoherence mitigation through dynamical decoupling~\cite{DDBiercuk_2011,jurcevic2021demonstration,DDKhodjasteh_2007,DDPokharel_2018,souza2012robust}, spin-echo correction~\cite{hahn}, gate scheduling~\cite{smith2021error}; etc.
In addition, some of these can be used in conjunction to achieve better fidelity~\cite{ravi2021vaqem}.
\iffalse
Many of these techniques make deployment decisions that are dependent on noise characteristics of qubits and gates which have to be captured through expensive full machine characterization, and are thus captured only at some coarse granularity of time (eg., roughly once a day on IBMQ machines).
Therefore, they are suboptimal in the presence of fine-granularity dynamic fluctuations.
\fi

\begin{figure}[t]
\centering
\fbox{
\includegraphics[width=0.9\columnwidth,trim={0cm 0cm 0cm 0cm}]{figures/VQA-overview.pdf}
}
\caption{VQA: a hybrid algorithm that alternates between classical optimization and quantum execution.}
\label{fig:vqa}
\end{figure}

\emph{\textbf{Variational Quantum Algorithms:}}
\label{b_VQA}
Variational algorithms expect to have innate error resilience due to hybrid alternation with a noise-robust classical optimizer~\cite{peruzzo2014variational, mcclean2016theory}.
An overview of this process is illustrated in Fig.~\ref{fig:vqa}.
There are multiple applications in the VQA domain such as the Quantum Approximate Optimization Algorithm (QAOA)~\cite{farhi2014quantum} and the Variational Quantum Eigensolver (VQE)~\cite{peruzzo2014variational}.
Our applications in this work target VQE but QISMET is broadly applicable across all VQAs.
\iffalse
An important application of VQE is the ground state energy estimation of a molecule, a task that is exponentially difficult in general for a classical computer~\cite{Gokhale:2019}.
Estimating the molecular ground state has important applications in chemistry, such as determining reaction rates and molecular geometry.
\fi
\iffalse
At a high level, VQE can be conceptualized as a guess-check-repeat algorithm.
The check stage involves the preparation of a quantum state corresponding to the guess.
This preparation stage is done in polynomial time on a quantum computer, but would incur exponential cost  in general on a classical computer.
This contrast gives rise to a potential quantum speedup for VQE~\cite{Gokhale:2019}.
\fi
The quantum circuit used in each iteration of VQE (and VQA in general) is termed an ansatz which describes the range of valid physical systems that can be explored and thus determines the optimization surface.
Traditionally, the ansatz is parameterized by 1-qubit rotation gates.
The VQA problem is represented as a Hamiltonian and is a linear combination of multiple Pauli terms.
The lowest eigenvalue of the Hamiltonian corresponds to the system's ground state energy~\cite{mcclean2016theory}.
Every iteration, the VQA objective function calculates the expectation value of this Hamiltonian.
This objective function is derived from ansatz measurements over different bases.
An illustration of this is shown in Fig.\ref{fig:qismet_design_qc}.

\iffalse
\emph{\textbf{Classical Tuning for VQAs:}}
\label{b_OPT}
The classical tuner/optimizer variationally updates the parameterized circuit until the measured objective converges to a minimum.
For simple VQA problems and in the presence of minimal noise, the optimization surface is convex around the global minimum and smooth~\cite{9259985}.
As noise increases, in line with NISQ machines, the optimization surface can potentially become non-convex and non-smooth.
The surface contour worsens as the problem complexity increases because of increase in circuit depth, number of parameters, and entanglement spread~\cite{9259985}.
In this work we predominantly focus on the popular Simultaneous Perturbation Stochastic Approximation (SPSA)~\cite{SPSA} optimizer  which has shown some robustness to noise.
SPSA is a method of stochastic gradient approximation, which only requires two measurements of the objective function per iteration, regardless of the dimension of the optimization problem.
Limited evaluation with an alternative tuner called Implicit Filtering~\cite{9259985} is discussed in Section \ref{e_sim}.

\fi

\section{Motivation: Transient noise and its impact}
\label{motive}

\subsection{Device level}
\label{m_device}

Non-uniformity among superconducting (SC) transmon qubits degrades the capacity of many near-term QCs to execute meaningful quantum workloads.
At the physical level, every superconducting transmon qubit is unique because of the unavoidable process variation during device fabrication.
These unintended differences across a quantum chip are called defects.
One of the most severe defects that stochastically appears during transmon manufacture is a two-level system (TLS)~\cite{muller2019towards}.
\iffalse
The name TLS might be confusing because a qubit, when working as intended, is also a system with two levels. However, the difference is that a TLS defect is inopportunely placed such that it destructively couples to qubits during computation, significantly reducing the duration of time in which quantum state information can be maintained~\cite{martinis2005decoherence}.

The Josephson Junction (JJ), or two superconductors separated by a thin metal-oxide insulator, is the critical component of the transmon qubit~\cite{gambetta2017building}.
JJs are delicate components that must be fabricated with ultimate precision to achieve properties that enable the superconducting circuit to hold quantum state.
Unfortunately, microscopic defects like TLS, taking the form of impurities inside materials or irregularities in atomic crystal structure, can appear in areas within the oxide layers or on the surface of the chip.
TLS defects take on their own charge properties, and because each defect is unique, TLS is difficult to characterize.
\fi
If TLS is close in proximity to the active components of the transmon, parasitic coupling causes qubit energy to be absorbed, causing fluctuation in qubit parameters such as T1 (amplitude) and T2 (phase) coherence times.
Since transmon quantum systems are dynamic with evolving electric fields and states within JJs, the coupling strength of TLS that is near-resonant to a qubit varies over time, causing the qubit fluctuations to themselves be transient in nature~\cite{burnett2019decoherence,schlor2019correlating}.
Apart from TLS, qubit parameters are also affected (potentially to a lesser degree) by thermal fluctuations, magnetic flux, quasi-particles, etc.~\cite{Klimov_2018,burnett2019decoherence}.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0.25cm 0.25cm 0.5cm 0.5cm},clip]{figures/Trans_Qubits3.pdf}
\caption{Transient fluctuations in T1 times observed over 65 hours~\cite{burnett2019decoherence}.
}
\label{fig:qismet_trans_qubits}
\end{figure}

Fig.\ref{fig:qismet_trans_qubits} shows transient fluctuations in T1 times observed over 65 hours on a transmon qubit~\cite{burnett2019decoherence} for reasons described above.
It should be noted that not all fluctuations are detrimental to a target circuit.
We expect circuits to suffer significant fidelity impact only from fluctuations that result in very low T1 times.
These are the outliers that are circled in the figure.
Our expectation that impactful transients are an exception rather than the norm is evident in our analysis in the rest of this section and in our quantitative results.
Furthermore, other fluctuating qubit parameters can also have significant impact; T1 times are just one example.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/Trans_circs2.pdf}
\caption{Impact of transient errors on circuits. The top two figures show circuit fidelity data collected over a 45-hour period. Each data point is the average circuit fidelity obtained over a batch of 140 (same) circuits over a one-hour period. The zoomed figure shows the variation in fidelity over one of the batches.
}
\label{fig:qismet_trans_circ}
\end{figure}

\subsection{Circuit level}
\label{m_circuit}

Fluctuations in T1 times and other qubit / gate level characteristics impact the execution of quantum circuits. The severity of impact could depend on:

\noindent \circled{a}\ Width of the QC: More number of qubits increases the probability of high impact transients on some (or at least one) of the qubits,

\noindent \circled{b}\ Depth of the QC: i) Deeper circuits are closer to the decoherence limit; therefore, a transient decrease in T1/T2 times can severely reduce circuit fidelity, and ii) deeper circuits usually imply more CX gates, which provide more sites for a substantial impact of error fluctuation,

\noindent \circled{c}\ Circuit State:  Effect of errors is state dependent. For example, a circuit that carries a superposition of states with a high proportion of 0s is less affected by decoherence.

Examples of the impact of transients on circuit fidelity are shown in Fig.\ref{fig:qismet_trans_circ}.
The two primary figures show circuit fidelity data collected over a 45-hour period. Each data point is the average circuit fidelity obtained over a batch of 140 circuits over a one-hour period.
The top circuit is a 4-qubit circuit with a depth of 6 CX gates. The average fidelity is around 83\% and the total variation in fidelity is only around 5\%.
The bottom circuit is 8-qubits with a depth of approximately 50 CX gates. The average fidelity is around 25\% and the variation is a concerning 35\%.
The zoomed figure at the bottom shows the fidelity variation over one of the batches, nearly 100\% variation across the batch.
The dashed line indicates a 90\% threshold - in our applications we find that avoiding the extremes beyond this 90\% is the most beneficial trade-off.
More on this in Section \ref{e_thresh}.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/Trans_VQA.pdf}
\caption{Extreme impact of transient errors on VQA tuning (multiple sharp spikes), from an experiment run on IBMQ Jakarta over a 24-hour period.
}
\label{fig:qismet_trans_vqa}
\end{figure}

\subsection{Application level (VQA)}
\label{m_app}

Finally, the impact of transient errors on quantum circuits have a cumulative effective on long-running applications such as VQAs whose outcomes are influenced by per-iteration circuit fidelity.
Discrepancies in gradient evaluations caused by transient noise fluctuations can lead the classical tuner to proceed along unfavorable  directions in the VQA space, severely impeding convergence and accuracy.
Section \ref{p_navigate} discusses this in more detail.

A severe case of transient error affecting VQA is shown in Fig.\ref{fig:qismet_trans_vqa}.
This is obtained from an experiment run on IBMQ Jakarta over roughly a 24-hour period.
While we would ideally expect this VQA to somewhat monotonically converge to the minimum, multiple sharp spikes caused by transient fluctuations are seen.
The spikes shown here are not the result of the optimizer jumping out of local minimas - such spikes are smoother and of lower amplitude.
Although the detrimental impact of some transient fluctuations might be negated over a few iterations (for instance, in the case of the first circled spike), others fluctuations have a more lasting impact (second circled spike).
The end expectation value reached at the end of 500 iterations is no better than that at 100 iterations, clearly showcasing the detrimental impact of transient noise.
While such severe impacts might not always occur, milder scenarios are very common and are still detrimental, especially for long running use cases.

\section{QISMET Proposal}

\subsection{Navigating the dynamic noise landscape}
\label{p_navigate}
In every iteration of VQA, a classical tuner evaluates the gradient along a particular direction.
Subsequently, it chooses directions which are some function of the prior evaluated gradients.
Although different optimizers might implement this in various ways, most gradient-based approaches are some interpretation of the above.
For instance, in a simple steepest-path approach, the direction with the steepest gradient (towards the optimum) is chosen.
This tuning approach is built on the fundamental assumption that the direction gradients evaluated  are affected by the same noise environment.

Fig.\ref{fig:qismet_intro_logic} shows the VQA landscape for a minimization task under different scenarios.
The blue dot represents the current configuration.
The other dots represent different VQA configurations evaluated by the tuner towards picking a subsequent configuration.
The dot positions along the Y-axis show their objective function estimates obtained on the machine in the presence of transients.
Dots above the dashed line are \emph{perceived} by the VQA tuner to worsen the objective while those below are \emph{perceived} to improve it (`perceived' because the \emph{true} transient-free estimates can be different from the machine obtained estimates, which could be skewed by transients).
The color and number of each dot is indicative of its \emph{true} objective function estimate in the absence of transients - note that these true estimates are not simply known in reality.
Green dots improve the objective while red dots worsen it and the numbers indicate the magnitude.
In a steepest-gradient approach, the VQA tuner would ideally want to select the \emph{true} minimum - a green dot with highest magnitude number.
But in reality it picks the \emph{perceived} minimum  - i.e., the dot which is lowest in the vertical direction (indicated by arrow).
This setting is key to understanding the impact of transients on VQA and the QISMET solution.

\noindent \circled{a}\ The ideal scenario with no transients is illustrated in Fig.\ref{fig:qismet_intro_logic}.a.
Here, the configuration selected by the tuner, which is the lowest vertically, is, in fact, the green dot with highest magnitude (green-6).
This is because the true and perceived estimates are equal in an ideal transient-free setting.
Thus, it selects the true minimum among the evaluated samples.
The effective VQA objective progress is shown in the inset at the bottom (moving lower is better) - in this case, it is optimal.

\noindent \circled{b}\ Unfortunately, this is often not the case in reality as shown in Fig.\ref{fig:qismet_intro_logic}.b.
Transient noise induces discrepancies in the gradient evaluations, and this can cause the tuner to perceive configurations differently from their transient-free true estimates.
This is indicated in the figure by the colors/magnitudes not being correlated with vertical positions.
Some true good configurations are perceived as bad (green dots above the dashed line) and some true bad configurations are perceived as good (red dots below the dashed line).
Furthermore, in this scenario, the perceived minimum which the tuner selects, i.e., the lowest dot in the vertical direction, is in fact a true bad configuration (red-3).
Choosing this configuration throws the VQA optimization significantly farther from the optimum, creating upward spikes as seen in Fig.\ref{fig:qismet_trans_vqa} and thereby derailing accurate convergence.
VQA progress is shown in the inset - the VQA objective worsens.

\noindent \circled{c}\ Fig.\ref{fig:qismet_intro_logic}.c shows how QISMET would navigate this realistic landscape with transient errors.
By estimating the transient noise (discussed in Section \ref{d_est}), QISMET tries to identify which perceived gradients are opposite in direction to their true gradients.
In other words, from Fig.\ref{fig:qismet_intro_logic}.b QISMET tries to predict which green dots are above the dashed line and which red dots are below.
It then re-executes these configurations on the quantum device until they are aligned with their true gradient directions (i.e., greens go below the dashed line and reds go above) or the retry budget is exhausted.
In Fig.\ref{fig:qismet_intro_logic}.c the retried configurations are circled in black.
Over the retrials, most (but not all) configurations realigned with their true gradient directions.
The realignment would happen for a configuration if it is able to execute in an instance of low transient noise - this is highly probable since transients of significant detrimental effect are fairly uncommon (as seen in Figures \ref{fig:qismet_trans_qubits} and \ref{fig:qismet_trans_circ}).
Eventually when selecting the new configuration, the tuner again selects the perceived minimum, i.e., the lowest vertical dot, but now this is a good true minimum (green-5), even if it is not the best (which was green-6 in the ideal case).
Since the selected configuration is still a good true minimum it does not derail the VQA optimization even in the presence transients.
VQA progress is shown in the inset - the VQA objective improves, even if not optimal (compared to the ideal case).
Thus, QISMET is more robust to the dynamic noise landscape of VQA.

\begin{figure*}[t]
\centering
\fbox{
\includegraphics[width=0.95\textwidth,trim={-3cm 0cm -3cm 0cm}]{figures/QISMET_overview5.pdf}}
\caption{Multiple VQA `jobs' (in light gray) run on the quantum machine. Job $\alpha$ consists of circuits corresponding to the $(i)^{th}$ VQA iteration (orange box), some error mitigation circuits (dark gray box), and QISMET adds circuits from the previous VQA iteration $(i-1)$ (yellow box). Other jobs/iterations can be inferred similarly from the figure. Progress in the VQA algorithm is determined by the QISMET controller (triangle labeled `C').
}
\label{fig:qismet}
\end{figure*}

\subsection{Per-iteration QISMET functionality}
\label{p_function}

Fig.\ref{fig:qismet} shows an instance of how QISMET functions over multiple iterations of VQA.
A sequence of VQA `jobs' are run on the quantum machine - each job is a collection of independent circuits.
If VQA is run with some error mitigation (measurement error mitigation, for example), job $\alpha$ would consist of circuits corresponding to the $(i)^{th}$ VQA iteration (orange inner box) and some related error mitigation circuits (dark gray inner box).
QISMET adds some reference circuits to job $\alpha$.
These are the repeated circuits from the  $(i-1)^{th}$ VQA iteration (yellow box).
Circuits in the other jobs shown can be similarly inferred from the figure.
Progress in the VQA algorithm is determined by the QISMET controller which is shown in the triangle labeled `C' between jobs. The following steps can occur:

\noindent \circled{1}\ Upon executing job $\alpha$, the QISMET controller takes as input: a) iteration $(i-1)$  circuits from the previous job $\omega$ (yellow), b) its repetitions in the current job, i.e., iteration $(i-1)$ circuits in job $\alpha$ (yellow), and c) the primary circuits of job $\alpha$, which correspond to iteration $(i)$ (orange). In this case, the controller is shown to make the decision that the impact of transient noise on the $(i)^{th}$ iteration is reasonable.

\noindent \circled{2}\ Thus, VQA proceeds to job $\beta$ with its primary circuit as VQA iteration $(i+1)$   (blue), along with other circuits, as shown in figure.

\noindent \circled{3}\ After completion of job $\beta$, the QISMET controller now takes as input: a) the iteration $(i)$ circuits  from the previous job $\alpha$ (orange), b) its repetitions in the current job, i.e., iteration $(i)$ circuits in job $\beta$ (orange), and c) the primary circuit of job $\beta$, which correspond to iteration $(i+1)$ (blue). In this instance, the controller is shown to make the decision that the transient noise impact is significant and can be detrimental to VQA.

\noindent \circled{4}\ Therefore, VQA does not proceed. Instead the VQA iteration $(i+1)$ circuits along with  other circuits are repeated via job $\gamma$ (hence same coloring as job $\beta$).
Note: since some transients effects can stay for extended time periods, the number of such rejections and repetitions is limited to some small max-out.

\noindent \circled{5}\ When the controller checks again (note that it obtains the iteration $(i)$  circuits in orange from job $\alpha$), it is deemed that significant fluctuation has passed and the current impact of transient noise is within reasonable limits.

\noindent \circled{6}\ Thus, VQA proceeds to job $\delta$ with the primary circuit as VQA iteration $(i+2)$, along with other circuits.

\iffalse
By taking steps as described above, the QISMET controller is able to navigate the dynamic noise VQA landscape, making decisions to the effect of Fig.\ref{fig:qismet_control_logic} as discussed in Section \ref{p_navigate}.
Transient error estimation is discussed in Section \ref{d_est} and controller logic in Section \ref{d_controller}.
\fi
\section{QISMET Design}

The QISMET proposal has two major components.
The first component estimates transient error in each VQA iteration and uses this to make transient-free predictions.
The second component uses the transient-free predictions to skip / retry particular iterations which are deemed harmful to VQA convergence.

\begin{figure*}[t]
\centering
\fbox{
\includegraphics[width=0.98\textwidth,trim={3cm 0cm 0cm 0cm},clip]{figures/QISMET_Design_QC2.pdf}
}
\caption{Detailed expansion of Fig.\ref{fig:qismet}. VQA iteration $(i)$  in job $\alpha$ produces energy estimate $E_{m}(i)$. Iteration $(i+1)$ in job $\beta$ produces $E_{m}(i+1)$.  The rerun of iteration $(i)$ in job $\beta$ produces $E_{mR}(i)$. The gradient with transients, as observed by a traditional VQA tuner, is $G_{m}(i+1)$. QISMET estimates the machine transient noise on iteration ($i+1$) as $T_{m}(i+1)$ and then predicts transient-free  $E_{p}(i+1)$ and  $G_{p}(i+1)$.
}
\label{fig:qismet_design_qc}
\end{figure*}

\subsection{Transient estimation,  transient-free prediction}
\label{d_est}
Fig.\ref{fig:qismet_design_qc} is a detailed expansion of any single iteration of Fig.\ref{fig:qismet}.
Note that no error mitigation circuits from Fig.\ref{fig:qismet} are shown.
The left of Fig.\ref{fig:qismet_design_qc} shows the VQA iteration $(i)$ circuit that was run in the `previous' job $\alpha$.
Its objective function (or energy) estimation on the machine is denoted by $E_{m}(i)$.
To its right is `current' job $\beta$ in which two circuits are shown.
The left circuit is the rerun of iteration $(i)$ and its energy estimation on the machine is denoted by $E_{mR}(i)$.
The right circuit is the iteration $(i+1)$ VQA circuit and its energy estimation on the machine is denoted by $E_{m}(i+1)$.
The machine gradient for iteration $(i+1)$ is $G_{m}(i+1)$ and is the difference between the machine energy estimates of iterations $(i+1)$ and $(i)$.
This is the gradient estimate that a traditional VQA tuner would use towards parameter selection for the next iteration.
QISMET estimates the transient error in iteration $(i+1)$ i.e., $T_{m}(i+1)$, as the energy difference between the rerun of iteration $(i)$ in job $\beta$ and its original run in job $\alpha$.
QISMET then predicts the transient-free energy for iteration $(i+1)$ i.e., $E_{p}(i+1)$, relative to $(i)$ by removing the transient error component from $E_{m}(i+1)$.
The predicted transient-free gradient is then $G_{m}(i+1)$.
Equations are shown to the right of Fig.\ref{fig:qismet_design_qc}.
This data is passed onto the QISMET controller which is discussed next in Section \ref{d_controller}.

\iffalse
Note that this assumes that the impact of the transient error on iteration $(i+1)$ is the same as that on iteration $(i)$.
Although this is not necessarily exactly true,
circuit $(i)$ is the closest possible reference circuit for transient noise estimation on circuit $(i+1)$, so its choice is justified.
\fi

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_control_logic5.pdf}
\caption{QISMET's gradient faithful controller. Green dots: VQA machine estimates for iteration $(i)$. Blue dots: machine estimate for iteration $(i+1)$. Yellow lines: negation of transient noise between $(i)$ and ($i+1$). Orange dots: predictions of transient-free estimates for iteration $(i+1)$.
Difference scenarios and the reaction of the controller are shown.
}
\label{fig:qismet_control_logic}
\end{figure}

\subsection{Gradient faithful QISMET controller}
\label{d_controller}
Fig.\ref{fig:qismet_control_logic} is an illustration of different scenarios presented to the QISMET controller and the corresponding decisions made so that it achieves the navigation illustrated in Fig.\ref{fig:qismet_intro_logic}.

The intuitive idea is that the controller accepts VQA iterations only if the directions of the true gradients (i.e., gradients obtained in an ideal transient-free scenario) match the direction of the perceived gradients (i.e., gradients observed by the VQA tuner based on machine energy estimations).
This prevents scenarios such as truly bad VQA configurations being perceived as good configurations, which could throw the VQA optimization away from its path towards the optimum target.

In the figure, the green dots are VQA energy estimates made on the quantum machine for iteration $(i)$, i.e., $E_{m}(i)$.
The blue dots are machine energy estimates for iteration $(i+1)$, i.e., $E_{m}(i+1)$.
The yellow lines are the negation of the estimated transient error between $(i)$ and $(i+1)$, i.e., $-T_{m}(i+1)$.
They are used to produce the orange dots which are the predictions of the transient-free energy for iteration $(i+1)$ relative to $(i)$, i.e., $E_{p}(i+1)$.
Different scenarios and controller decisions are discussed below.

\noindent \circled{1}\ In Fig.\ref{fig:qismet_control_logic}.a and b, both the machine estimates and the predicted transient-free estimates for iteration $(i+1)$ have a positive gradient wrt $(i)$, i.e., $G_{m}(i+1)$ and $G_{p}(i+1)$ are both positive. Thus, the VQA iteration is acceptable, as the direction of the gradient is maintained.

\noindent \circled{2}\ In (d) and (e), the machine gradients and predicted transient-free gradients of $(i+1)$ wrt $(i)$ are both negative, thus this iteration is acceptable.

\noindent \circled{3}\ In (c), the machine estimate for $(i+1)$  has a positive gradient wrt $(i)$, but since the transient noise is significantly large, the predicted estimate (after negation of the transient noise) has a negative gradient. This is unacceptable since it makes a potentially bad VQA configuration be interpreted as a good one.

\noindent \circled{4}\ (f) is the inverse of (c) - again unacceptable because it makes a good VQA configuration be interpreted as bad.

\noindent \circled{5}\ Finally, the gradient swings within a specified error threshold region (pink shaded region) are always accepted. This is to avoid frequent skipping on less impacting transients. This is discussed and evaluated in Section \ref{e_thresh}.

\subsection{Other skipping / filtering techniques}
\label{filter}
It could be argued that an alternative intuitive solution is to avoid all instances in which transient noise is greater than some set threshold.
The controller could simply be designed to skip a VQA iteration $(i)$ if abs($T_{m}(i)) > \tau$.
We find that such a solution is unsuitable because many transients (even of reasonable magnitude) that are constructive to VQA progress, are skipped, thus, affecting accuracy and substantially delaying convergence.
A quantitative comparison is discussed in Section \ref{e_alt}.

\textcolor{black}{ }\textcolor{black}{
The above is a fundamental difference between the QISMET gradient faithful controller and other filtering techniques that are common in classical computing (such as in signal processing).
For example, Kalman filtering~\cite{kalman} is a signal processing approach that uses a system's environment model, some known inputs to that system, and multiple noisy measurements (say, from sensors), to build an understanding of the system's noise / variation, and then calculate noise-free estimates.
It is generally suitable to application settings with dynamic variations similar to our focus in this work.
A key feature of such filtering techniques is that they treat all forms of measurement variance to be the same and eliminate the variance in a principled way by inferring some information from multiple measurements.}

\textcolor{black}{ }\textcolor{black}{
Unfortunately, this is less suited to the VQA tuning landscape.
As discussed in Section \ref{d_controller}, not all transients are harmful to VQA progress and only those that flip the gradient directions are detrimental and need to be avoided.
From Fig.\ref{fig:qismet_control_logic}, let's consider scenarios (a) and (c).
While both have significant transient error magnitudes, (a) is not detrimental to VQA progress and is accepted by QISMET while (c) is deemed detrimental and is rejected.
In contrast, the Kalman Filter (and related techniques) will
incorporate some information from both (a) and (c) towards its elimination of noise and estimation of the true value.
When carefully tuned, the differences  in these scenarios can be incorporated into the filter to some extent, but its efficiency will be limited.
With less careful tuning, the filtering might, in fact, prove to be detrimental.
We quantitatively showcase different filtering scenarios in Sec.\ref{kalman}.}

\textcolor{black}{ }\textcolor{black}{
It should also be noted that Kalman and other classical filtering techniques work best when the signal and noise follow some specific fairly stable characteristics.
Unfortunately, as per our current understanding of quantum devices, the transient noise dynamism is largely non-deterministic and constantly varying over fine granularities of time.
}

\section{Methodology}
\label{6-method}

\begin{table}[]
\resizebox{\columnwidth}{!}{
\begin{tabular}{|l|l|l|l|l|}
\hline
\textbf{Application} & \textbf{Qubits} & \textbf{Ansatz} & \textbf{Reps} & \textbf{Machine / trial} \\ \hline
\textbf{App1} & 6 & SU2 & 2 & Toronto (v1)   \\ \hline
\textbf{App2} & 6 & RA  & 4 & Guadalupe (v1)  \\ \hline
\textbf{App3} & 6 & RA  & 4 & Guadalupe (v2)  \\ \hline
\textbf{App4} & 6 & SU2 & 4 & Toronto (v2)   \\ \hline
\textbf{App5} & 6 & RA  & 8 & Cairo (v1)     \\ \hline
\textbf{App6} & 6 & RA  & 8 & Casablanca (v1) \\ \hline
\end{tabular}
}
\caption{TFIM VQA applications for simulation}
\label{Table1}
\end{table}

\subsection{Applications and general infrastructure}

QISMET is a software optimization that can be integrated with any VQA classical optimizer.
We implement it in Python and use it with the Qiskit VQA framework~\cite{Qiskit}, through which it interacts with quantum execution.

We limit ourselves to one VQA domain, the VQE, which was introduced in Section \ref{b_VQA}.
Due to noisy machine limitations on circuit width and depth, applications are restricted to 6 qubits.
Our evaluations encompass 2 Hamiltonians, 6 different ansatz, and 7 IBMQ machines (as well as simulation).

Our primary focus is the one-dimensional TFIM (Transverse Field Ising Model) Hamiltonian, which is an ubiquitous model that has applications in understanding phase transitions in magnetic materials~\cite{uvarov2020machine}.
The TFIM is a desirable system since it is exactly solvable via classical means.
Further, the Hamiltonian is easily constructed to create small problem sizes.
We also evaluate the potential energy of the Hydrogen molecule over bond lengths of 0.4 - 2 \AA.

We use the hardware efficient SU2~\cite{IBM-SU2} and RA~\cite{IBM-RA} ansatz which are of low depth and therefore suited to NISQ devices.
The number of block repetitions in the ansatz is varied between 2, 4 and 8 repetitions.
IBM Q machines targeted for machine runs are Guadalupe (27q), Toronto (27q), Sydney (27q), Casablanca (7q), Jakarta (7q), and Mumbai (27q).
IBM Q machines from which traces are generated for simulation are Guadalupe (27q), Toronto (27q), Cairo (27q), and Casablanca (7q).
Machine details can be found on the IBM Quantum Systems page~\cite{IBMQS}.
TFIM simulation application details are summarized in Table \ref{Table1}.

\subsection{Building transient noise models for simulation}
\iffalse
While execution on real quantum machines is a must for the holistic evaluation of application fidelity, sufficient access to machines is still limited today, especially for long-running applications such as VQAs.
Further, fair evaluation requires a deterministic environment across different points of comparison, as well as reproducible results to validate and improve upon the proposal.
To enable longer VQA runs in a deterministic environment and for reproducible comparisons, we are required to explore the use of IBM's quantum simulator (via Qiskit).
Unfortunately, the noise models traditionally available to Qiskit are static over the period of a machine's calibration cycle - they are refreshed roughly once per day.
\fi

To enable fine-granularity transient noise analysis in simulation, we build transient error traces for our target application-machine combinations.
Per-iteration transient effects on VQA are captured and normalized to the magnitude of the VQA estimations.
These transient effects are composed into a data structure and integrated into Qiskit's VQA framework.
In each simulated VQA iteration, an instance of transient noise is accessed from the data structure corresponding to the particular application-machine pair.
This transient noise is factored in with existing static components from Qiskit's noise models.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Results_Sim_Sweep.pdf}
\caption{VQA simulation on the Qiskit simulator with our added transient noise model.
}
\label{fig:qismet_sim_sweep}
\end{figure}

Furthermore, the magnitude of transient noise can also be varied to perform a wider range of analyzes, as shown in Fig.\ref{fig:qismet_sim_sweep}.
The figure shows a variety of transient noise magnitudes applied to a VQA application, varying from 0-50\% of the ideal VQA objective estimations.
Intuitively, it is evident that as the impact of transient noise increases, the accuracy and convergence of the VQA estimates worsen.
Similar experiments can be performed to test the capability of new proposals - we use this simulator to extensively evaluate QISMET.

\subsection{Evaluation Comparisons}
\label{eval_cmp}
We evaluate QISMET based on VQA energy estimates (using the standard Hartree Energy metric when applicable).
In one or more experiments, we compare:

\emph{Baseline:} Traditional VQA employing measurement error mitigation but no mitigation for transient errors.

\emph{QISMET:} Baseline + control to estimate transients and skip / rerun iterations when appropriate. The QISMET error threshold is set so as to skip at most 10\% of the iterations (found to be the most suitable - Section \ref{e_thresh}).

\emph{Blocking:} A Qiskit SPSA optimization that only accepts VQA updates that move towards the objective.

\emph{Resampling:}  SPSA optimization that increases the number of times the gradient is sampled (we use 2x).

\emph{2nd-order:} A Qiskit SPSA optimization that estimates second-order derivatives to condition the gradient.

\emph{Noise-free:} An ideal scenario without any form of error (run on the Qiskit simulator).

\emph{QISMET-conservative:} QISMET with threshold set to skip at most 1\% of the VQA iterations.

\emph{QISMET-aggressive:} QISMET with threshold set to skip at most 25\% of the VQA iterations.

\emph{Only-transients:} An alternative proposed technique that skips VQA iterations if the estimated transient error is larger than some specified threshold.

\textcolor{black}{ }\textcolor{black}{\emph{Kalman:} A classical filtering approach discussed in Section \ref{filter}. It requires tuning filter hyper-parameters such as the Transition Coefficient (T), which is a linear estimation of the slope of the noise-free curve, and the Measurement Variance (MV), which is related to the variance in the noisy measurements.
}
\section{Evaluation Results}

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Machine_Guad.pdf}
\caption{QISMET benefits for a 6-qubit TFIM VQA on IBMQ Guadalupe run over a 48-hour period. Two instances of moderate transient error are circled and are avoided by QISMET.
}
\label{fig:qismet_machine_guad}
\end{figure}

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Machine_Syd.pdf}
\caption{QISMET benefits for a 6-qubit TFIM VQA on IBMQ Sydney run over a 48-hour period with one sharp instance of transient error (circled) and are avoided by QISMET.
}
\label{fig:qismet_machine_syd}
\end{figure}

\begin{figure}[h]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Full_Machine.pdf}
\caption{QISMET benefits for a 6-qubit TFIM VQA on six IBMQ machines. Iterations varies across applications, depending on machine availability.
}
\label{fig:qismet_machine_full}
\end{figure}

\subsection{Real Machine Experiments}
First, we analyze VQA experiments run on the real IBMQ quantum machines. Note that the number of iterations that we can run on these machines is limited due to access constraints.

Fig.\ref{fig:qismet_machine_guad} shows a comparison of QISMET against the baseline on a 6-qubit TFIM VQA on IBMQ Guadalupe.
Both versions of the application are run for around 270 iterations, over a 48 hour period.
The versions are run in a synchronous manner, so each iteration of the baseline is run temporally adjacent to the corresponding iteration of the QISMET version.
Many instances of moderate transient error impact the baseline - two phases with transient errors are circled.
While the baseline quickly recovers from the first transient phase, the second phase is more harmful, causing the VQA accuracy to somewhat stagnate over the next 50-100 iterations.
These transient phases are predominantly avoided with QISMET, leading to a 40\% improvement in VQA estimation over 270 iterations.

Fig.\ref{fig:qismet_machine_syd} shows a comparison of QISMET against the baseline for the same 6-qubit TFIM VQA  on IBMQ Sydney.
Both versions of the application are run for around 350 iterations, over a 48 hour period.
While the machine behavior is smooth for most of the tuning period, there is a single phase of significant  turbulence (circled) which heavily impacts the baseline.
QISMET is able to avoid this turbulent phase - QISMET is especially effective here since the transients only occur for a few iterations - once QISMET skips those errors, it is able to continue its steady progress, achieving a 50\% improvement over the 350 iterations.

Fig.\ref{fig:qismet_machine_full} shows the QISMET benefits over the baseline on the primary vertical axis and the number of iterations run on the secondary vertical axis.
Results are shown across 6 different IBM Q machines.
QISMET improves the measured VQA expectation by by 29-51\% across the machines, with a mean improvement of 39\%.
These improvements are achieved over 200-450 VQA iterations run on the devices.
We expect that the relative QISMET benefits would be greater if more iterations were run since there would be increased potential for more transients to impact the baseline.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Results_Sim_App2.pdf}
\caption{Simulating VQA with transient errors for App2, using the SPSA tuner, over 2000 iterations. QISMET is compared against SPSA optimizations.
}
\label{fig:qismet_sim_app}
\end{figure}

\subsection{Comparing against SPSA optimization schemes}
\label{spsa_cmp}

Fig.\ref{fig:qismet_sim_app} shows simulated evaluations of App2 (see Table \ref{Table1}) for five schemes - Baseline, QISMET, Resampling, Blocking and 2nd-order.
These are introduced in Section \ref{6-method}.
Simulations are run for 2000 iterations using the SPSA tuner, with convergence generally beginning at around 1250 iterations.
QISMET performs best, achieving a VQA expectation of -1.5, which is a 65\% improvement over the baseline.

The Blocking and Resampling schemes also show some improvement over the baseline.
While the Blocking scheme can avoid transient errors that move VQA away from the objective, it also hurts the ability to escape from local minima.
Similarly, while the Resampling scheme's increase in samples offers some transient robustness, it has twice the computational cost per iteration and therefore can be 2x slower to converge.
Therefore, the VQA improvements obtained from these are around 30\% lower than QISMET.

The 2nd-order scheme uses 2nd-order derivatives to influence the gradients calculated in each iteration.
We observe this scheme to in fact be detrimental in the presence of transients - imperfect 2nd-order derivatives can potentially skew the gradients even further away from optimal.
This scheme performs 35\% worse than the baseline and roughly 2.5x worse than QISMET.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Results_Alt.pdf}
\caption{Only-transients skipping approach shown for App1.
}
\label{fig:qismet_alt}
\end{figure}

\subsection{Alternative only-transients skipping approach}
\label{e_alt}

\iffalse
In the end of Section \ref{filter}, we noted that one could consider an alternative skipping approach which skips iterations simply based on the magnitude of the estimated transient error.
We argued such a solution is unsuitable because many transients that are constructive to VQA progress are skipped, affecting accuracy and substantially delaying convergence.
\fi

Fig.\ref{fig:qismet_alt} shows the the alternative skipping approach discussed in Section \ref{filter}, evaluated for App1.
Thresholds (based on which the controller decides to skip or not) vary from a very high threshold, which keeps the \% of skips below 1\% (99p), to a low threshold, which allows up to 50\% of the iterations to be skipped (50p).
In all scenarios, the resulting VQA estimates are worse than the baseline and the higher skipping thresholds always perform better.
This is clearly indicative that the skipping technique is more harmful than useful, motivating the need for a more intelligent approach such as QISMET.

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Kalman_2.pdf}
\caption{\textcolor{black}{ }\textcolor{black}{Simulated comparison of Kalman filter against Qismet and baseline, for App6. Two Kalman hyper-parameters (described in Section \ref{eval_cmp}) are tuned over a limited search space. While good choices of Kalman hyper-parameters can provide some improvements over the baseline, the benefits are substantially lower than those from Qismet.}}
\label{fig:qismet_kal}
\end{figure}

\subsection{Comparing against Kalman filtering}
\label{kalman}
\textcolor{black}{ }\textcolor{black}{
Furthering the discussion in Section \ref{filter}, we compare different Kalman instances (with different values of T and MV parameters - details in Section \ref{eval_cmp}) in Fig.\ref{fig:qismet_kal}.
We show its evaluation for App6, against the Baseline and Qismet, for 500 iterations, in simulation.
Here, the Kalman filtering is applied on top of the noisy VQA tuning performed with SPSA.
Note here that the T and MV values are tuned via an oracle approach, with noise known apriori, purely to maximize benefits.
}

\textcolor{black}{ }\textcolor{black}{We show 6 different Kalman instances with MV=0.01/0.1 and T=0.9/0.99/1 in Fig.\ref{fig:qismet_kal}.
A low MV value indicates that the filter assumes low influence of variation in the machine measurements - thus the filter does not actively combat it.
Thus, any instance of high transient noise significantly impacts the filter (seen in the pink line, for example).
A high MV value indicates the possibility of high variation influence in the measurements - so the filter actively avoids this.
Unfortunately, the filter is unable to differentiate between machine noise and actual algorithmic variance (navigating local minima etc) - thus, this filtering technique saturates quickly and poorly (seen in the dark blue line, for example).
A T value farther away from 1 imposes a forced downward descent on the estimated values - while this is helpful in true downward slopes, it is bad for escaping minima.
In this application example, the most stable low estimate is produced by (MV=0.1, T=1) whereas the lowest but an erratic estimate is produced by (MV=0.01, T=1).
While the estimates are as much as 1.4x better than the baseline, QISMET estimates are 3x better than the best Kalman variant, while also being stable.
}

\begin{figure}[t]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/Qismet_compare.pdf}
\caption{\textcolor{black}{ }\textcolor{black}{QISMET benefits from the six simulated applications using the SPSA tuner run for 2000 iterations. QISMET provides consistent benefits,  outperforming the baseline and competing schemes (Blocking, Resampling, 2nd-order and Kalman filtering).}
}
\label{fig:qismet_sim_full}
\end{figure}

\subsection{Simulated comparisons to multiple benchmarks}
\label{e_sim}
Next, in Fig.\ref{fig:qismet_sim_full} we perform evaluation comparisons for five schemes - QISMET, Blocking, Resampling, 2nd-order \textcolor{black}{ }\textcolor{black}{, and Kalman filter}, across the six applications listed in Table \ref{Table1}.
All evaluations are simulated for 2000 iterations and optimized with the SPSA tuner.
QISMET provides consistent benefits, always outperforming the baseline and competing schemes, achieving mean improvements of 2x (up to 3x), 1.7x, 1.6x, 2.4x, \textcolor{black}{ }\textcolor{black}{and 1.85x} respectively.
Note that Blocking and Resampling schemes are inconsistent, offering a mean improvement over the baseline (1.2-1.25x), but perform worse on some applications (highlighted in red).
As noted earlier, while these schemes have some robustness to transients, they are slow to accuracy / convergence due to increased per-iteration evaluation.
The 2nd-order scheme consistently performs worse than the baseline and is not observed to be a suitable solution for transient errors.
\textcolor{black}{ }\textcolor{black}{The Kalman filter hyper-parameters are tuned as discussed in Section \ref{kalman}  and only the best-case results are shown.
While there is non-negligible improvement over the baseline, the benefits are fairly low due to the reasons described in Section \ref{filter}.
Clearly, Qismet achieves a considerably higher improvement.
Also, the best Kalman instance varies across different applications, further highlighting the challenges.
}
Finally, it should be noted that QISMET benefits are generally greater for deeper circuits and/or on traces from noisier machines.
This is intuitive and in line with the discussion in Section \ref{m_circuit}.

\iffalse
We also evaluated QISMET benefits with the Implicit Filter (ImFil) tuner, a promising alternative noise-robust classical optimizer proposed in \cite{9259985} - we summarize below without graphical representation.
In ImFil, the optimization is controlled by evaluating the objective function at a cluster of points within some specified bounds.
The minimum of those evaluations then drives the next cluster of points.
We observe that ImFil performs poorly on the baseline, likely due to the impact of transients on one or more of the many samples taken per iteration to determine the next configuration.
Due to poor baseline fidelity, the relative benefits of QISMET are very high, with mean improvements of 2.7x and a maximum of 5.6x.
However, it should be noted that ImFil+QISMET performs worse than SPSA+QISMET (by a mean of 13\%) - thus, the choice of base tuner is still critical with or without QISMET.
\fi

\iffalse

\begin{figure}[h]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_Full_Sim_ImFil_2.pdf}
\caption{QISMET benefits over the six simulated applications using the ImFil tuner, run for 2000 iterations. ImFil performs poorly on the baseline, likely due to the impact of transients on multiple different samples taken per iteration to determine the next iteration configuration. Thus, QISMET benefits are greater - mean improvements of 2.7x and a maximum of 5.6x. Note that ImFil+QISMET performs worse than SPSA+QISMET (by a mean of 13\%) as shown on the secondary axis - thus choice of base tuner is still critical with or without QISMET \textcolor{red}{NOTE: }\textcolor{red}{maybe just discuss this in  text without figure}.}
\label{fig:qismet_sim_imfil}
\end{figure}
\fi

\begin{figure}[h]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/H2-QISMET.pdf}
\caption{Effect of transient noise on multi-VQA experiments, shown by energy estimation of $H_2$.
}
\label{fig:qismet_sim_h2}
\end{figure}

\subsection{Multi-VQA Experiments for Molecules}
\iffalse
In molecular chemistry, it is important to estimate the difference in VQE estimates across multiple Hamiltonians~\cite{vancoillie2016potential}.
Here, each Hamiltonian models a particular geometry of the molecule (usually different bond lengths), and the VQE estimate is a measure of the molecular potential energy.
The difference between the energy estimates at different bond lengths is indicative of the chemical reaction rates for the molecule of interest.
If transient noise affects some of the VQA experiments more than others, then the difference in energy estimates can be very skewed.
\fi

Fig.\ref{fig:qismet_sim_h2} shows potential energy estimation for the $H_2$ molecule through simulation.
This simulation setup only uses transient noise and no static noise component.
Estimations are performed for 10 different $H-H$ bond lengths, each corresponding to a unique Hamiltonian and VQE experiment.
The ideal noise-free scenario is shown, along with estimates obtained with QISMET and the baseline.
Clearly, QISMET provides high-accuracy estimates, and the shape of the bell curve closely models the noise-free scenario.
On the other hand, the baseline steadily deviates away from noise-free.
Greater deviation is expected at higher bond lengths since the quantum component of the potential energy is more significant in this region (and therefore, so is the quantum error).

\begin{figure}[h]
\centering
\includegraphics[width=\columnwidth,trim={0cm 0cm 0cm 0cm},clip]{figures/QISMET_threshold_sweep.pdf}
\caption{Different QISMET error thresholds are analyzed on two simulated use cases which experience low and high transient noise respectively.
}
\label{fig:qismet_sim_thresh}
\end{figure}

\subsection{ Sweeping the QISMET error threshold}
\label{e_thresh}
In Section \ref{d_controller}, we discussed the use of a threshold to control the fraction of transients that are skipped by the QISMET controller.
In Fig.\ref{fig:qismet_sim_thresh} three different thresholds are analyzed along with the baseline - these were introduced in Section \ref{6-method}.
The evaluation is shown for two simulated use cases which experience low and high transient noise respectively.
For the chosen use cases, the conservative threshold skips too few instances to have a significant impact and, therefore, performs similarly to the baseline.
The aggressive threshold pushes QISMET to be worse than the baseline in the scenario with low transient noise - too many iterations with low transient noise are skipped unnecessarily which delay convergence.
In the scenario with high transient noise, the aggressive threshold still achieves considerable benefit since there are enough such impacting transients to skip.
The best-case threshold is a good trade-off and is able to achieve the highest benefits in both scenarios, achieving a 1.2x and 3x improvement over the baseline, respectively.
Note that intelligent dynamic thresholding can potentially be used to improve these benefits further, but is beyond our current scope.

\section{Discussion}

\subsection{Tuning QISMET Parameters}
\textcolor{black}{ }\textcolor{black}{There are two tunable parameters in the QISMET framework.
The more impactful one is the error threshold, which is discussed in Section \ref{d_controller} and evaluated in Section \ref{e_thresh}.
If transient errors are very few and of very large magnitude, then conservative thresholds are suitable---QISMET will predominantly follow the baseline and only avoid the transient errors which clearly stand out as egregious occurrences.
On the other hand, transient errors which are more frequent and of magnitudes that are not too large but still detrimental, will benefit from more aggressive thresholds.}

\textcolor{black}{ }\textcolor{black}{
The other tunable parameter is the retry budget or the maximum number of repetitions that QISMET will perform on any iteration that does not meet the error threshold. In this work we fix this to 5 repetitions.
The optimal number for this budget could be derived from an understanding of the typical time duration for which transient effects last.
As long as the execution time taken by the retry-budget number of repetitions is slightly greater than the transient error duration, then an instance without the transient error's effects can be achieved for the given iteration.
At the same time, if some device characteristic change occurs for a long time duration, i.e., it is not transient (eg., machine re-calibration), then we would want the change to be quickly accepted by QISMET, and adapted to by the VQA tuner in future iterations.
From our real device experiments, we observe that transient errors disappear in one or two repetitions.
}

\textcolor{black}{ }\textcolor{black}{
Better understanding of device level characteristics and noise sources will be beneficial to tuning the QISMET parameters.
While the specifics of transient error characteristics are often unpredictable (such as the occurrence or magnitude of a TLS),
it could be possible that the probability of occurrence of impactful transient errors could be gauged from environmental deviations (like temperature), from features of the quantum circuit (like circuit depth), from qubit decoherence times etc.
}

\subsection{QISMET Suitability}
\textcolor{black}{ }\textcolor{black}{
QISMET is most effective and has most significant benefits when transient errors are of high magnitude and of reasonably short duration.
Such instances can be identified and skipped in just a single trial.
Our empirical real machine observations suggest that this is often the case.
Transients of lower magnitude are not harmful to either QISMET or the baseline.
There are some particular scenarios in which QISMET could perform poorly.
One, if transient errors are gradually accumulating, then the errors would always be acceptable to the threshold but they might push VQA far from optimality.
In this scenario though, QISMET would perform no worse than the baseline.
Two, if high magnitude transient errors are of very long duration, then the effect of the transient is accepted after a retry budget worth of skips---thus, the negative impact on VQA estimation is similar to the baseline, but QISMET also suffers from lost iterations in this scenario---thus QISMET is worse off.
While there could be other adversarial scenarios that negatively impact QISMET, quantum devices are too noisy today for contrived adversarial patterns to have any realistic likelihood of occurrence over a prolonged period.
}

\subsection{QISMET Overheads}
\textcolor{black}{ }\textcolor{black}{
QISMET requires that each execution instance runs the current VQA iteration as well as a rerun of the previous iteration.
In the absence of other error mitigation / supporting circuits,  this means that the circuit execution overhead of QISMET is at least 2x (compared to a baseline with no transient errors).
For the above scenario, in the absence of no skips, the overhead is exactly 2x, whereas the overhead increases with the number of skips.
On most fairly reliable machines, the number of skips is extremely small---only the egregious transients are being avoided.
However, it should be noted that error mitigation circuits (such as those to combat measurement errors) are often run alongside the primary circuit.
These supporting circuits are often many in number, scaling in proportion to the number of measurement bits.
In the presence of such circuits, QISMET overheads are reduced.
Further, any QISMET overhead will only be negatively reflected if transients are entirely absent---in practical settings which do have some transients, avoiding them with QISMET substantially lowers the overall iteration / execution time cost.
}

\textcolor{black}{ }\textcolor{black}{
\textbf{Kalman comparison:} While, at first glance, it may seem that there are no overheads to the Kalman filtering (since circuits are run only once), it should be noted that the oracle (or any) approach used to tune the hyper-parameters requires some profiling, which would likely be much more expensive than the QISMET scenario, as described above.
}

\subsection{Other Classical Techniques}
\textcolor{black}{ }\textcolor{black}{
In Sec.\ref{kalman}, we showed that QISMET can substantially outperform classical filtering techniques such as the Kalman filter.
Other filtering techniques are also available, such as Constant False Alarm Rate (CFAR)~\cite{CFAR} detection, which is used in radar systems to detect target returns against a background of noise and interference.
Similar to Kalman, they are limited in their capability to avoid  specific detrimental transients.
Finally, while the above filtering techniques are fairly unsupervised, supervised techniques are impractical since there is no useful labeled training data available, since the data would have to be  machine-application pair dependent and stable over long periods of time.}

\iffalse

\emph{\textbf{Future Directions:}}
\label{FD}
Transient errors can also impact other applications which are non-iterative; therefore, building techniques to identify the presence of such transient effects, as well as estimating their magnitudes, is critical to improve the fidelity of their measured outputs.
Furthermore, there is the potential to build solutions with a deeper understanding of the noise sources, so that specific phases of execution that expect high error rates can be avoided proactively.
But at the same time, this can be very challenging because understanding noise sources often requires significant machine characterization; lightweight, less intrusive techniques should be explored.
Inspirations from classical signal processing techniques are worth considering---some challenges are discussed below in Section \ref{RW}.
Finally, it would be worth exploring the integration of QISMET with other (static) error mitigation techniques, to bring reality closer to the orange line in Fig.\ref{fig:qismet_graph}.

\emph{\textbf{Related Work:}}
\label{RW}
There is a wealth of prior classical computing work, especially in signal processing, to remove noisy samples from collected data.
Kalman filtering~\cite{kalman} was discussed earlier and compared against.
Constant false alarm rate (CFAR)~\cite{CFAR} detection is used in radar systems to detect target returns against a background of noise and interference.
CFAR determines a power threshold above which any return can be considered to probably originate from a target, as opposed to a noise source. Sophisticated CFAR implementations rigorously analyze a wealth of inexpensive radar data to create optimal threshold settings.
Other techniques can also be explored, but as shown in this work we do not find direct effective portability of prior classical signal processing approaches to the quantum world.
\fi

\section{Conclusion}
\label{Conc}
Transient errors can be very detrimental to quantum computing in the NISQ era, especially for long-running applications such as VQAs.
\iffalse
Noise fluctuation can cause a significant transient impact on the objective function estimation of some VQA instances, and this can severely affect gradients and therefore the accuracy and convergence of the VQA.
To our knowledge, this work is among the first to study the effects of transient errors on VQAs.

\fi
This paper proposes QISMET to navigate the dynamic noise landscape of VQA.
It actively avoids instances of high fluctuating noise which can have a significant transient error impact on specific VQA iterations.
To achieve this, QISMET estimates transient noise in VQA iterations and designs a controller to keep the machine-obtained iteration gradients (specifically, their directions) faithful to their corresponding transient-free predicted estimates.

\section*{Acknowledgement}
This work is funded in part by EPiQC, an NSF Expedition in Computing, under award CCF-1730449;
in part by STAQ under award NSF Phy-1818914; in part by NSF award 2110860;
in part by the US Department of Energy Office  of Advanced Scientific Computing Research, Accelerated Research for Quantum Computing Program;
and in part by the NSF Quantum Leap Challenge Institute for Hybrid Quantum Architectures and Networks (NSF Award 2016136)
and in part based upon work supported by the U.S. Department of Energy, Office of Science, National Quantum Information Science Research Centers.
This work was completed in part with resources provided by
the University of Chicago's Research Computing Center.
GSR is supported as a Computing Innovation Fellow at the University of Chicago. This material is based upon work supported by the National Science Foundation under Grant \# 2030859 to the Computing Research Association for the CIFellows Project.
KNS is supported by IBM as a Postdoctoral Scholar at the University of Chicago and the Chicago Quantum Exchange.
HH is supported by NSF (grants CCF-2119184, CNS-1956180, CNS-1952050, CCF-1823032, CNS-1764039), ARO (grant W911NF1920321), and a DOE Early Career Award (grant DESC0014195 0003).
FTC is Chief Scientist for Quantum Software at ColdQuanta and an advisor to Quantum Circuits, Inc.

\bibliographystyle{plain}

\section{Introduction}

This document provides instructions for submitting papers to the 28th
International Conference on Architectural Support for Programming
Languages and Operating Systems (ASPLOS), 2023.  In an effort to
respect the efforts of reviewers and in the interest of fairness to
all prospective authors, we request that all submissions to ASPLOS
2023 follow the formatting and submission rules detailed below.
Submissions that violate these instructions may not be reviewed, at the
discretion of the program co-chairs.

The submission instructions are also available in
\href{https://asplos-conference.org/submissions/}{this website},
including a link to the paper submission site. The website contains
sample PDF files for the paper
and
extended abstract. The
sample files are formatted using the ASPLOS'23 submission format and
contain the submission and formatting guidelines. The website also
includes an archive file
with \LaTeX~templates for both papers and extended abstracts.

All questions regarding paper formatting and submission should be directed
to the program co-chairs.

\paragraph{Important highlights:}
\begin{itemize}
\item Papers should contain a
maximum of 13 pages of single-spaced two-column text but not including
references.
\item Papers should contain a maximum of {\bf 8800 words} not including references.
\item All submitted papers must be accompanied by an extended
  abstract, in a separate file with a maximum of
2 pages of single-spaced two-column text, not counting references.
\item Papers and extended abstracts must be submitted in printable PDF format.
\item Text must be in a minimum 10pt ({\bf not} 9pt) font.
\item No page limit for references for papers and the extended abstracts.
\item Each reference must specify {\em all} authors (no {\em et al.}).
\item Proceedings will appear in the ACM digital library up to two weeks
before the conference.
\end{itemize}

\section{Paper and Abstract Preparation Instructions}

\subsection{Paper Formatting}

Papers must be submitted in printable PDF format and should contain a
maximum of {\bf 13 pages} of single-spaced two-column text, not counting
references. Papers should contain less than {\bf 8800 words} (not including references). The paper may include any number of pages for
references, but see below for more instructions. If you are using
\LaTeX~\cite{lamport94} to typeset your paper, then we suggest that
you use the template that we provide online.
If you use a different
software package to typeset your paper, then please adhere to the
guidelines given in Table~\ref{table:formatting}.

\begin{table}[h!]
  \centering
  \begin{tabular}{|l|l|}
    \hline
    \textbf{Field} & \textbf{Value}\\
    \hline
    \hline
    File format & PDF \\
    \hline
    Page limit & 13 pages, {\bf not }\\
               & {\bf including references}\\
    \hline
    Paper size & US Letter 8.5in $\times$ 11in\\
    \hline
    Top margin & 1in\\
    \hline
    Bottom margin & 1in\\
    \hline
    Left margin & 1in\\
    \hline
    Right margin & 1in\\
    \hline
    Body & 2-column, single-spaced\\
    \hline
    Word count & 8800 words\\
    \hline
    Separation b/t columns & 0.25in\\
    \hline
    Body font & 10pt\\
    \hline
    Abstract font & 10pt, italicized\\
    \hline
    Section heading font & 12pt, bold\\
    \hline
    Subsection heading font & 10pt, bold\\
    \hline
    Caption font & 9pt, bold\\
    \hline
    Figure \& Table width & Min.~of column width \\
    \hline
    References & 8pt, no page limit, list \\
               & all authors' names\\
    \hline
  \end{tabular}
  \caption{Formatting guidelines for submission. }
  \label{table:formatting}
\end{table}

\textbf{Please ensure that you include page numbers with your
submission}. This makes it easier for the reviewers to refer to different
parts of your paper when they provide comments.

Please ensure that your submission has a banner at the top of the title
page, as shown in
this
sample paper, which contains the submission number and the notice of
confidentiality.  If using the template, just replace XXX with your
submission number.

\subsection{Extended Abstract Formatting}

The extended abstracts must be submitted in printable PDF format and should contain a
{\bf maximum of 2 pages} of single-spaced two-column text, {\bf not
  counting references}.  You may include any number of pages for
references, but see below for more instructions. The extended
abstracts should use the same formatting as the papers. If you are using
\LaTeX~\cite{lamport94} to typeset your extended abstract, then we suggest that
you use
our
  template that also describes what information to include in your
extended abstract.

The extended abstract and the paper must be independent (standalone) documents that a reviewer can read separately, as some rejection decisions may be made based only on extended abstracts. The extended abstract can refer to figures and sections in the main paper.

You can check the extended abstracts of papers published at ASPLOS 2021
\href{https://asplos-conference.org/2021/index.htm
{here}.

\subsection{Content}

\noindent\textbf{Anonymity.}  Reviewing will be \textbf{double blind};
therefore, please \textbf{do not include any author names on any submitted
documents} except in the space provided on the submission form.

Pay attention not to reveal the author or affiliation information through
side channels:

\begin{itemize}
\item The metadata included in the PDF should not give away such
information.

\item If you are improving upon your prior work, refer to your prior
work in the third person and include a full citation for the work in the
bibliography.  For example, if you are building on {\em your own} prior
work in the papers \cite{nicepaper1,nicepaper2,nicepaper3}, you would say
something like: "Prior work
\cite{nicepaper1,nicepaper2,nicepaper3} did X, Y, and Z, this paper
additionally does W, and is therefore much better."  Do NOT omit or
anonymize references for blind review, unless
your own prior work appeared in IEEE CAL or workshops without archived
proceedings, as discussed later in this document.

\item If your system is already released to the public, please rename your system in your submission.

\item You should avoid revealing affiliation (e.g., by identifying your company’s name) in your paper. Instead, please use a generic name, like “a cloud service provider X”.
If concealing system name or affiliation would make your paper difficult to understand, contact the program chairs to discuss exceptions to this policy.
\end{itemize}

(For more frequently-asked questions about double-blind reviewing, please
consult this
\href{https://pldi20.sigplan.org/track/pldi-2020-papers#FAQ-on-Double-Blind-Reviewing}
{FAQ from PLDI 2020}.)

\textbf{Violating the above anonymity requirement will be rejected without review}. If you have any concerns, please contact the program chairs before your paper submission.

\noindent\textbf{Figures and Tables.} Ensure that the figures and tables
are legible.
Reviewers may print the papers in gray-scale. Therefore, if you use
colors for your figures, ensure that the different colors are highly
distinguishable in gray-scale. Figures and Tables must be no smaller than a column width.

\noindent\textbf{References.}  There is no length limit for references.
Each reference must explicitly list all authors of the paper.
Knowing all authors of related
work will help find the best reviewers. Since there is no length limit
for the number of pages used for references, there is no need to save space
here.

\section{Paper and Abstract Submission Instructions}

\subsection{Declaring Authors}

Declare all the authors of the paper up front. Addition/removal of authors
once the paper is accepted will have to be approved by the program co-chairs,
since it potentially undermines the goal of eliminating conflicts for
reviewer assignment.

\subsection{Areas and Topics}

ASPLOS emphasizes multidisciplinary research. Submissions should ideally
emphasize synergy of two or more ASPLOS areas: architecture, programming
languages, operating systems, and related areas (broadly
interpreted). Authors should indicate these areas on the submission form.

Authors should also indicate \textbf{at most 3}
topics covered by the paper on the submission form
for optimal reviewer match. If more than 3 topics are selected, some topics
will be randomly dropped by program chairs.

If
you are unsure whether your paper falls within the scope of ASPLOS, please
check with the program co-chair -- ASPLOS is a broad, multidisciplinary
conference and encourages new topics.

\subsection{Declaring Conflicts of Interest}

Authors must register all their conflicts on the paper submission site.
Conflicts are needed to ensure appropriate assignment of reviewers.
If a paper is found to have an undeclared conflict that causes
a problem OR if a paper is found to declare false conflicts in order to
abuse or ``game'' the review system, the paper may be rejected.

Please declare a conflict of interest (COI) with the following people
for any author of your paper:

\begin{enumerate}
\item Your Ph.D. advisor(s), post-doctoral advisor(s), Ph.D. students,
      and post-doctoral advisees, forever.
\item Family relations by blood or marriage and close personal friends, forever (if they might be potential reviewers).
\item People with whom you have collaborated in the last four years, including
\begin{itemize}
\item co-authors of accepted/rejected/pending papers.
\item co-PIs on accepted/rejected/pending grant proposals.
\end{itemize}
\item People (including students) who shared your primary institution(s) in the
last four years.
\end{enumerate}

You need not and should not declare a COI for the following cases:

\begin{itemize}
\item ``Service'' collaborations such as co-authoring a report for a professional
organization or an open-source community, serving on a program committee, or co-presenting
tutorials, do not themselves create a conflict of interest.

\item Co-authoring a paper that is a compendium of various projects without
direct collaboration among the projects does not constitute a
conflict among the authors of the different projects.

\item Internships constitute a conflict of interest during the period of employment of the intern, but not thereafter, unless some other provision applies (e.g., coauthorship or ongoing research collaboration after the internship).

\item You \textbf{must not} declare a COI with a reviewer just because that reviewer works on topics similar to or related to those in your paper.

\end{itemize}

Please declare all your conflicts, not just restricted to the PC and ERC, as we may occasionally ask for reviews from people outside the PC and the ERC.

When in doubt, contact the program chairs.

\subsection{Concurrent Submissions and Workshops}

By submitting a manuscript to ASPLOS'23, the authors guarantee that the
manuscript has not been previously published or accepted for publication in
a substantially similar form in any conference, journal, or workshop. The
only exceptions are (1) workshops without archived proceedings such as in
the ACM digital library (or where the authors chose not to have their paper
appear in the archived proceedings), or (2) venues, such as IEEE CAL, where
there is an explicit policy that such publication does not preclude longer
conference submissions. These are not considered prior publications.
Technical reports and papers posted on public social media sites, Web pages,
or online repositories, such as arxiv.org, are not considered prior
publications either. In these cases, the submitted manuscript may
ignore the posted work to preserve author anonymity.
The authors also guarantee that no paper that contains
significant overlap with the contributions of the submitted paper will be
under review for any other conference, journal, or workshop during the
ASPLOS'23 review period. Violation of any of these conditions will lead to
rejection. As always, if you are in doubt, it is best to contact the
program co-chairs.  Finally, we also note that the ACM Plagiarism Policy
(http://www.acm.org/publications/policies/plagiarism\_policy) covers a range
of ethical issues concerning the misrepresentation of other works or one's
own work.

\subsection{Ethical Obligations}
\begin{itemize}
\item Authors are not allowed to contact reviewers or PC members to encourage or solicit them to bid on any paper.
\item Authors are not allowed to attempt to sway a reviewer to review any paper positively or negatively.
\item Authors are not allowed to contact reviewers or PC members requesting any type of information about the reviewing process, either in general or specifically about submitted papers.
\item Authors are not allowed to contact reviewers or PC members to ask about the outcomes of any papers.
\item Authors must also abide by the
  \href{https://www.acm.org/code-of-ethics}{ACM ethics
    policy}. Violation of the ACM ethics policy may result in
  rejection of the submission and possible action by the ACM.
 \item Authors are not allowed to advertise their submissions or related technical reports and postings (e.g., to arxiv.org or online repositories) on social media or community blogs and webpages during the period starting two weeks before the submission deadline and ending when the ASPLOS’23 acceptance results are public.
\end{itemize}

\section{Early Access in the Digital Library}

The ASPLOS'23 proceedings will be freely available via the ACM Digital
Library for up to two weeks before the
conference. Authors must consider any implications of this early
disclosure of their work {\em before} submitting their papers.

\section{Acknowledgements}

This document is modified from the ASPLOS'21 and ASPLOS/22 submission guides, thank
you Emery Berger, Christos Kozyrakis, Shan Lu and Thomas Wenisch!

\bibliographystyle{plain}