<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">%%% Macros specific to this figure
\newcommand{\na}{{\color{gray}N/A}}
\newcommand{\centerheader}[1]{\multicolumn{1}{c}{#1}}
\newcommand{\figfiverow}[2]{
    \begin{minipage}[c]{0.03\linewidth}
        \figrowlegend{#1}
    \end{minipage}\figspaceleft{}
    \begin{minipage}[c]{0.13\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-palmed.png}
    \end{minipage}\figspacemid{}
    \begin{minipage}[c]{0.13\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-UOPS.png}
    \end{minipage}\figspacemid{}
    \begin{minipage}[c]{0.13\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-PMEvo.png}
    \end{minipage}\figspacemid{}
    \begin{minipage}[c]{0.13\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-IACA.png}
    \end{minipage}\figspacemid{}
    \begin{minipage}[c]{0.13\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-LLVM_MCA.png}
    \end{minipage}\figspaceright{}
    \begin{minipage}[c]{0.035\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-legend.png}
    \end{minipage}
}
\newcommand{\figthreerow}[2]{
    \begin{minipage}[c]{0.03\linewidth}
        \figrowlegend{#1}
    \end{minipage}\figspaceleft{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-palmed.png}
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-PMEvo.png}
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-LLVM_MCA.png}
    \end{minipage}\figspaceright{}
    \begin{minipage}[c]{0.035\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-legend.png}
    \end{minipage}
}
\newcommand{\figthreerowlegend}[2]{
    \begin{minipage}[c]{0.03\linewidth}
        \figrowlegend{#1}
    \end{minipage}\figspaceleft{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-palmed.png}
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.12\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmap_legend.svg}
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-PMEvo.png}
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.12\linewidth}
        ~
    \end{minipage}\figspacezenmid{}
    \begin{minipage}[c]{0.15\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-LLVM_MCA.png}
    \end{minipage}\figspaceright{}
    \begin{minipage}[c]{0.035\linewidth}
        \includegraphics[width=\linewidth]{ipc_heatmaps/#2-legend.png}
    \end{minipage}
}
\newenvironment{figleftlabel}[1]{
    \begin{minipage}[c]{0.02\linewidth}
        \figrowlegend{#1}
    \end{minipage}\figspaceleft{}
\begin{minipage}[c]{0.94\linewidth}}
{\end{minipage}}
\newcommand{\figspaceleft}{\hspace{1em}}
\newcommand{\figspaceright}{\hspace{1em}}
\newcommand{\figspacemid}{\hfill}
\newcommand{\figspacezenmid}{\hfill}
\newcommand{\figcollegend}[1]{\begin{center}\textbf{\normalsize #1}\end{center}}
\newcommand{\figrowlegend}[1]{\rotatebox{90}{\small\textbf{#1}}}
\newcommand{\figspacerow}

\newcommand{\tabcoverage}{Cov.}
\newcommand{\taberror}{Err.}
\newcommand{\tabkendall}{$\tau_K$}
\newcommand{\tabcoverageunit}{(\%)}
\newcommand{\taberrorunit}{(\%)}
\newcommand{\tabkendallunit}{$(1)$}
\definecolor{tabcovbg}{RGB}{235,255,255}
\definecolor{taberrbg}{RGB}{255,240,255}
\definecolor{tabktaubg}{RGB}{239,250,235}
\newcolumntype{C}{&gt;{\columncolor{tabcovbg}}r}
\newcolumntype{E}{&gt;{\columncolor{taberrbg}}r}
\newcolumntype{K}{&gt;{\columncolor{tabktaubg}}r}

\newcommand{\covrow}{\tabcoverage{} &amp; \tabcoverageunit{}}
\newcommand{\errrow}{\taberror{}    &amp; \taberrorunit{}}
\newcommand{\taurow}{\tabkendall{}  &amp; \tabkendallunit{}}

%%% Taken directly from Palmed paper
\begin{figure}
    \centering
    \begin{figleftlabel}{}
        \begin{minipage}[c]{0.03\linewidth}~\end{minipage}\figspaceleft{}
        \begin{minipage}[c]{0.13\linewidth}
            \figcollegend{\palmed{}}
        \end{minipage}\figspacemid{}
        \begin{minipage}[c]{0.13\linewidth}
            \figcollegend{uops.info}
        \end{minipage}\figspacemid{}
        \begin{minipage}[c]{0.13\linewidth}
            \figcollegend{PMEvo}
        \end{minipage}\figspacemid{}
        \begin{minipage}[c]{0.13\linewidth}
            \figcollegend{IACA}
        \end{minipage}\figspacemid{}
        \begin{minipage}[c]{0.13\linewidth}
            \figcollegend{llvm-mca}
        \end{minipage}\figspaceright{}
        \begin{minipage}[c]{0.035\linewidth}~\end{minipage}
    \end{figleftlabel}

    \begin{figleftlabel}{SKL-SP}
        \figfiverow{SPEC 17}{spec-W-skx}

        \figspacerow

        \figfiverow{Polybench}{polybench-W-skx}
    \end{figleftlabel}

    \figspacerow{}

    \begin{figleftlabel}{ZEN1}
        \figthreerow{SPEC 17}{spec-W-zen}

        \figspacerow

        \figthreerowlegend{Polybench}{polybench-W-zen}
    \end{figleftlabel}

    \begin{figleftlabel}{A72 (ARM)}
        \todo{PLOTS}
    \end{figleftlabel}

    \caption{IPC prediction profile heatmaps~--~predictions closer to the
        red line are more accurate. Predicted IPC ratio (Y) against native
    IPC (X)}
    \label{fig:palmed_heatmaps}
\end{figure}

\begin{table}
    \centering
    \begin{tabular}{l l c r r r r}
        \toprule
        &amp; &amp; &amp; \multicolumn{2}{c}{SKL-SP} &amp; \multicolumn{2}{c}{ZEN1} \\
        &amp; &amp; &amp; \centerheader{SPEC2017} &amp; \centerheader{Polybench} &amp;
        \centerheader{SPEC2017} &amp; \centerheader{Polybench} \\
        \midrule
        \multirow{3}{*}{\palmed}
                    &amp; \covrow{} &amp; \na{}{} &amp; \na{} &amp; \na{} &amp; \na{} \\
                    &amp; \errrow{} &amp; 7.8 &amp; 24.4 &amp; 29.9 &amp; 32.6 \\
                    &amp; \taurow{} &amp; 0.90 &amp; 0.78 &amp; 0.68 &amp; 0.46 \\
        \midrule{}
        \multirow{3}{*}{\uopsinfo}
                    &amp; \covrow{} &amp; 99.9 &amp; 100.0 &amp; \na{} &amp; \na{} \\
                    &amp; \errrow{} &amp; 40.3 &amp; 68.1 &amp; \na{} &amp; \na{} \\
                    &amp; \taurow{} &amp; 0.71 &amp; 0.29 &amp; \na{} &amp; \na{} \\
        \midrule{}
        \multirow{3}{*}{\pmevo}
                    &amp; \covrow{} &amp; 71.3 &amp; 66.8 &amp; 71.3 &amp; 66.8 \\
                    &amp; \errrow{} &amp; 28.1 &amp; 46.7 &amp; 36.5 &amp; 38.5 \\
                    &amp; \taurow{} &amp; 0.47 &amp; 0.14 &amp; 0.43 &amp; 0.11 \\
        \midrule{}
        \multirow{3}{*}{\iaca}
                    &amp; \covrow{} &amp; 100.0 &amp; 100.0 &amp; \na{} &amp; \na{} \\
                    &amp; \errrow{} &amp; 8.7 &amp; 15.1 &amp; \na{} &amp; \na{} \\
                    &amp; \taurow{} &amp; 0.80 &amp; 0.67 &amp; \na{} &amp; \na{} \\
        \midrule{}
        \multirow{3}{*}{\llvmmca}
                    &amp; \covrow{} &amp; 96.8 &amp; 99.5 &amp; 96.8 &amp; 99.5 \\
                    &amp; \errrow{} &amp; 20.1 &amp; 15.3 &amp; 33.4 &amp; 28.6 \\
                    &amp; \taurow{} &amp; 0.73 &amp; 0.65 &amp; 0.75 &amp; 0.40 \\
        \bottomrule
    \end{tabular}

    \todo{A72}
    \caption{Accuracy of IPC predictions compared to \pipedream{}-based native
    executions on SPEC 2017 and Polybench}\label{table:palmed_eval}
\end{table}
</pre></body></html>