Efficient Invisible Speculative Execution through Selective Delay and Value Prediction

被引:56
|
作者
Sakalis, Christos [1 ]
Kaxiras, Stefanos [1 ]
Ros, Alberto [2 ]
Jimborean, Alexandra [1 ]
Sjalander, Magnus [3 ]
机构
[1] Uppsala Univ, Uppsala, Sweden
[2] Univ Murcia, Murcia, Spain
[3] Norwegian Univ Sci & Technol, Trondheim, Norway
基金
瑞典研究理事会;
关键词
speculative execution; side-channel attacks; caches; ATTACKS;
D O I
10.1145/3307650.3322216
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Speculative execution, the base on which modern high-performance general-purpose CPUs are built on, has recently been shown to enable a slew of security attacks. All these attacks are centered around a common set of behaviors: During speculative execution, the architectural state of the system is kept unmodified, until the speculation can be verified. In the event that a misspeculation occurs, then anything that can affect the architectural state is reverted (squashed) and re-executed correctly. However, the same is not true for the microarchitectural state. Normally invisible to the user, changes to the microarchitectural state can be observed through various side-channels, with timing differences caused by the memory hierarchy being one of the most common and easy to exploit. The speculative side-channels can then be exploited to perform attacks that can bypass software and hardware checks in order to leak information. These attacks, out of which the most infamous are perhaps Spectre and Meltdown, have led to a frantic search for solutions. In this work, we present our own solution for reducing the microarchitectural state-changes caused by speculative execution in the memory hierarchy. It is based on the observation that if we only allow accesses that hit in the L1 data cache to proceed, then we can easily hide any microarchitectural changes until after the speculation has been verified. At the same time, we propose to prevent stalls by value predicting the loads that miss in the L1. Value prediction, though speculative, constitutes an invisible form of speculation, not seen outside the core. We evaluate our solution and show that we can prevent observable microarchitectural changes in the memory hierarchy while keeping the performance and energy costs at 11% and 7%, respectively. In comparison, the current state of the art solution, InvisiSpec, incurs a 46% performance loss and a 51% energy increase.
引用
收藏
页码:723 / 735
页数:13
相关论文
共 50 条
  • [1] SVP: Safe and Efficient Speculative Execution Mechanism through Value Prediction
    Wang, Kaixuan
    Qin, Xinyu
    Yang, Zhuoyuan
    He, Weiliang
    Liu, Yifan
    Han, Jun
    PROCEEDINGS OF THE GREAT LAKES SYMPOSIUM ON VLSI 2023, GLSVLSI 2023, 2023, : 433 - 437
  • [2] Understanding Selective Delay as a Method for Efficient Secure Speculative Execution
    Sakalis, Christos
    Kaxiras, Stefanos
    Ros, Alberto
    Jimborean, Alexandra
    Sjalander, Magnus
    IEEE TRANSACTIONS ON COMPUTERS, 2020, 69 (11) : 1584 - 1595
  • [3] Value Prediction and Speculative Execution on GPU
    Liu, Shaoshan
    Eisenbeis, Christine
    Gaudiot, Jean-Luc
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2011, 39 (05) : 533 - 552
  • [4] Value Prediction and Speculative Execution on GPU
    Shaoshan Liu
    Christine Eisenbeis
    Jean-Luc Gaudiot
    International Journal of Parallel Programming, 2011, 39 : 533 - 552
  • [5] Speculative Data-Oblivious Execution: Mobilizing Safe Prediction For Safe and Efficient Speculative Execution
    Yu, Jiyong
    Mantri, Namrata
    Torrellas, Josep
    Morrison, Adam
    Fletcher, Christopher W.
    2020 ACM/IEEE 47TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA 2020), 2020, : 707 - 720
  • [6] Using value prediction to increase the power of speculative execution hardware
    Gabbay, F
    Mendelson, A
    ACM TRANSACTIONS ON COMPUTER SYSTEMS, 1998, 16 (03): : 234 - 270
  • [7] InvisiSpec: Making Speculative Execution Invisible in the Cache Hierarchy
    Yan, Mengjia
    Choi, Jiho
    Skarlatos, Dimitrios
    Morrison, Adam
    Fletcher, Christopher W.
    Torrellas, Josep
    2018 51ST ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE (MICRO), 2018, : 428 - 441
  • [8] Enhancing Speculative Execution With Selective Approximate Computing
    Nongpoh, Bernard
    Ray, Rajarshi
    Das, Moumita
    Banerjee, Ansuman
    ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2019, 24 (02)
  • [9] Clearing the Shadows: Recovering Lost Performance for Invisible Speculative Execution through HW/SW Co-Design
    Tran, Kim-Anh
    Sakalis, Christos
    Sjalander, Magnus
    Ros, Alberto
    Kaxiras, Stefanos
    Jimborean, Alexandra
    PACT '20: PROCEEDINGS OF THE ACM INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, 2020, : 241 - 254
  • [10] A speculative multithreading with selective multi-path execution
    Ootsu, K
    Yoshinari, W
    Furukawa, F
    Yoshinaga, T
    Baba, T
    INNOVATIVE ARCHITECTURE FOR FUTURE GENERATION HIGH-PERFORMANCE PROCESSORS AND SYSTEMS, 1999, : 46 - 52