We propose a cooperative methodology for multithreaded software, where threads use traditional synchronization idioms such as locks, but additionally document each point of potent...
Multithreaded programs are notoriously prone to unintended interference between concurrent threads. To address this problem, we argue that yield annotations in the source code sho...
Jaeheon Yi, Tim Disney, Stephen N. Freund, Cormac ...
The event-driven programming style is pervasive as an efficient method for interacting with the environment. Unfortunately, the event-driven style severely complicates program mai...
Jeffrey Fischer, Rupak Majumdar, Todd D. Millstein
Concurrent software is difficult to verify. Because the thread schedule is not controlled by the application, testing may miss defects that occur under specific thread schedules. T...
Abstract—GPUs have recently been used to accelerate dataparallel applications for they provide easier programmability and increased generality while maintaining the tremendous me...
Ping Yao, Hong An, Mu Xu, Gu Liu, Xiaoqiang Li, Ya...