@article{02e92cdf78934626abd140b4371c0bf5,
title = "Speculative Synchronization: Programmability and Performance for Parallel Codes",
abstract = "The use of speculative synchronization for optimistically executing unanalyzable serial code in parallel applications is discussed. Speculative synchronization allows threads to speculatively execute past active barriers, busy locks and unset flags. The presence of one or more safe threads in every active synchronization point guarantees the application's forward progress, even in the presence of access conflicts or insufficient cache space for speculative data. Speculative synchronization can easily be transparent to application programmers and parallelizing compilers, and can coexist with uses of conventional synchronization in the same program.",
author = "Mart{\'i}nez, {Jos{\'e}F F.} and Josep Torrellas",
note = "Funding Information: electrical and computer engineering at Cornell University. His research interests are in parallel computer architecture, microarchitecture, and hardware-software interaction. Mart{\'i}nez has a PhD in computer science from the University of Illinois at Urbana-Champaign and is a two-time recipient of the Spanish government{\textquoteright}s national award for academic excellence. He is a member of the IEEE Computer Society and the ACM. Funding Information: ence and Willett Faculty Scholar at the University of Illinois at Urbana-Champaign and vice-chair of the IEEE Technical Committee on Computer Architecture (TCCA). His research interests are in computer architecture. Torrellas has a PhD in electrical engineering from Stanford University and is a recipient of an NSF Young Investigator Award. He is an IEEE Fellow and a member of the ACM.",
year = "2003",
month = nov,
doi = "10.1109/MM.2003.1261396",
language = "English (US)",
volume = "23",
pages = "126--134",
journal = "IEEE Micro",
issn = "0272-1732",
publisher = "IEEE Computer Society",
number = "6",
}