Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Journal articles
  4. Exploiting reference idempotency to reduce speculative storage overflow
 
research article

Exploiting reference idempotency to reduce speculative storage overflow

Kim, Seon Wook
•
Ooi, Chong-Liang
•
Eigenmann, Rudolf
Show more
2006
ACM Transactions on Programming Languages and Systems

Recent proposals for multithreaded architectures employ speculative execution to allow threads with unknown dependences to execute speculatively in parallel. The architectures use hardware speculative storage to buffer speculative data, track data dependences and correct incorrect executions through roll-backs. Because all memory references access the speculative storage, current proposals implement speculative storage using small memory structures to achieve fast access. The limited capacity of the speculative storage causes considerable performance loss due to speculative storage overflow whenever a thread's speculative state exceeds the speculative storage capacity. Larger threads exacerbate the overflow problem but are preferable to smaller threads, as larger threads uncover more parallelism. In this article, we discover a new program property called memory reference idempotency, Idempotent references are guaranteed to be eventually corrected, though the references may be temporarily incorrect in the process of speculation. Therefore, idempotent references, even from nonparallelizable program sections, need not be tracked in the speculative storage, and instead can directly access nonspeculative storage (i.e., conventional memory hierarchy). Thus, we reduce the demand for speculative storage space in large threads. We define a formal framework for reference idempotency and present a novel compiler-assisted speculative execution model. We prove the necessary and sufficient conditions for reference idempotency using our model. We present a compiler algorithm to label idempotent memory references for the hardware. Experimental results show that for our benchmarks, over 60% of the references in nonparallelizable program sections are idempotent. © 2006 ACM.

  • Details
  • Metrics
Type
research article
DOI
10.1145/1152649.1152653
Author(s)
Kim, Seon Wook
Ooi, Chong-Liang
Eigenmann, Rudolf
Falsafi, Babak  
Vijaykumar, T. N.
Date Issued

2006

Published in
ACM Transactions on Programming Languages and Systems
Volume

28

Issue

5

Start page

942

End page

965

Editorial or Peer reviewed

REVIEWED

Written at

OTHER

EPFL units
PARSA  
Available on Infoscience
April 6, 2009
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/36949
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés