Vis enkel innførsel

dc.contributor.authorSakalis, Christos
dc.contributor.authorKaxiras, Stefanos
dc.contributor.authorRos, Alberto
dc.contributor.authorJimborean, Alexandra
dc.contributor.authorSjälander, Magnus
dc.date.accessioned2020-02-21T10:23:52Z
dc.date.available2020-02-21T10:23:52Z
dc.date.created2019-09-17T14:11:22Z
dc.date.issued2019
dc.identifier.citationComputer Architecture. 2019, 723-735.nb_NO
dc.identifier.issn1063-6897
dc.identifier.urihttp://hdl.handle.net/11250/2643194
dc.description.abstractSpeculative 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.nb_NO
dc.language.isoengnb_NO
dc.publisherAssociation for Computing Machinery (ACM)nb_NO
dc.titleEfficient invisible speculative execution through selective delay and value predictionnb_NO
dc.typeJournal articlenb_NO
dc.typePeer reviewednb_NO
dc.description.versionacceptedVersionnb_NO
dc.source.pagenumber723-735nb_NO
dc.source.journalComputer Architecturenb_NO
dc.identifier.doi10.1145/3307650.3322216
dc.identifier.cristin1725713
dc.description.localcode© ACM, 2019. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published here http://dx.doi.org/10.1145/3307650.3322216nb_NO
cristin.unitcode194,63,10,0
cristin.unitnameInstitutt for datateknologi og informatikk
cristin.ispublishedtrue
cristin.fulltextpostprint
cristin.qualitycode1


Tilhørende fil(er)

Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel