Vis enkel innførsel

dc.contributor.authorTran, Kim-anh
dc.contributor.authorSakalis, Christos
dc.contributor.authorSjälander, Magnus
dc.contributor.authorRos, Alberto
dc.contributor.authorKaxiras, Stefanos
dc.contributor.authorJimborean, Alexandra
dc.date.accessioned2020-10-21T13:25:27Z
dc.date.available2020-10-21T13:25:27Z
dc.date.created2020-10-13T09:50:11Z
dc.date.issued2020
dc.identifier.isbn978-1-4503-8075-1
dc.identifier.urihttps://hdl.handle.net/11250/2684259
dc.description.abstractOut-of-order processors heavily rely on speculation to achieve high performance, allowing instructions to bypass other slower instructions in order to fully utilize the processor's resources. Speculatively executed instructions do not affect the correctness of the application, as they never change the architectural state, but they do affect the micro-architectural behavior of the system. Until recently, these changes were considered to be safe but with the discovery of new security attacks that misuse speculative execution to leak secrete information through observable micro-architectural changes (so called side-channels), this is no longer the case. To solve this issue, a wave of software and hardware mitigations have been proposed, the majority of which delay and/or hide speculative execution until it is deemed to be safe, trading performance for security. These newly enforced restrictions change how speculation is applied and where the performance bottlenecks appear, forcing us to rethink how we design and optimize both the hardware and the software. We observe that many of the state-of-the-art hardware solutions targeting memory systems operate on a common scheme: the visible execution of loads or their dependents is blocked until they become safe to execute. In this work we propose a generally applicable hardware-software extension that focuses on removing the causes of loads' unsafety, generally caused by control and memory dependence speculation. As a result, we manage to make more loads safe to execute at an early stage, which enables us to schedule more loads at a time to overlap their delays and improve performance. We apply our techniques on the state-of-the-art Delay-on-Miss hardware defense and show that we reduce the performance gap to the unsafe baseline by 53% (on average).en_US
dc.language.isoengen_US
dc.publisherAssociation for Computing Machinery (ACM)en_US
dc.relation.ispartofPACT '20: Proceedings of the ACM International Conference on Parallel Architectures and Compilation Techniques
dc.titleClearing the Shadows: Recovering Lost Performance for Invisible Speculative Execution through HW/SW Co-Designen_US
dc.typeChapteren_US
dc.description.versionacceptedVersionen_US
dc.source.pagenumber241-254en_US
dc.identifier.doihttps://doi.org/10.1145/3410463.3414640
dc.identifier.cristin1839080
dc.relation.projectVetenskapsrådet: 2015-05159en_US
dc.description.localcode© ACM, 2020. 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 https://doi.org/10.1145/3410463.3414640en_US
cristin.ispublishedtrue
cristin.fulltextpreprint


Tilhørende fil(er)

Thumbnail

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

Vis enkel innførsel