Kaoutar El Maghraoui, Gokul Kandiraju, et al.
WOSP/SIPEW 2010
We describe ConTest, a tool for detecting synchronization faults in multithreaded Java™ programs. The program under test is seeded with a sleep(), yield(), or priority() primitive at shared memory accesses and synchronization events. At run time, ConTest makes random or coverage-based decisions as to whether the seeded primitive is to be executed. Thus, the probability of finding concurrent faults is increased. A replay algorithm facilitates debugging by saving the order of shared memory accesses and synchronization events.
Kaoutar El Maghraoui, Gokul Kandiraju, et al.
WOSP/SIPEW 2010
Alessandro Morari, Roberto Gioiosa, et al.
IPDPS 2011
Sonia Cafieri, Jon Lee, et al.
Journal of Global Optimization
Charles H. Bennett, Aram W. Harrow, et al.
IEEE Trans. Inf. Theory