\chapter{评测}\label{sec:eval} \section{评测环境} 本文对 gem5 模拟器修改,对以下 5 种配置进行评测:Baseline, Fence, Fence+DIFT, IS, IS+DIFT. Baseline 表示受 Spectre 攻击影响的处理器模型, Fence 和 IS 分别表示对所有推测式执行中的 load 指令,推迟执行和用 InvisiSpec的方案执行,Fence+DIFT 和 IS+DIFT 则是使用动态信息流追踪识别 可能泄露秘密数据的 load,只对这些 load 使用相应的安全的执行方案。 对所有的处理器配置,基本配置如下: \begin{tabular}{|c|c|} \hline 参数 & 配置 \tabularnewline \hline \hline 指令系统 & x86\_64\tabularnewline \hline 处理器类型 & 8发射乱序处理器\tabularnewline \hline ROB & 192\tabularnewline \hline LDQ & 32\tabularnewline \hline STQ & 32\tabularnewline \hline 发射队列 & 64\tabularnewline \hline L1 I-Cache & 32KB, 4路组相联, 1周期延迟\tabularnewline \hline L1 D-Cache & 64KB, 8路组相联, 1周期延迟\tabularnewline \hline L2 Cache & 2MB, 16路组相联, 8周期延迟\tabularnewline \hline \end{tabular} \section{评测指标} \section{评测结果} \subsection{微架构安全性测试} \subsection{SPEC CPU2006的性能评测} 本文对 21 个 SPEC CPU2006 基准测试进行评测,基准测试的数据集使用 ref 集。先用 gem5 的 AtomicSimpleCPU 运行 10000000000 条指令,再用待评测的 处理器配置运行 1000000000 条指令,得出评测结果。 \begin{figure}[htbp] \centering \includegraphics[width=0.8\textwidth]{result.eps} \end{figure} 从评测结果可以看出,在使用 DIFT 识别可能泄露数据的 load 指令后,推迟这 些指令的执行,有 15\% 的性能开销,平均性能开销比 InvisiSpec 小。在此基 础上,用 InvisiSpec 的方案执行这些 load 指令,可以进一步将性能开销减少 至 8.5\%.