Write a Blog >>
Tue 20 Jun 2017 16:20 - 16:55 at Vertex WS217 - D Chair(s): Radu Grigore

Compilers often use escape analysis to elide locking operations on thread-local data. Similarly, dynamic race detectors may use escape analysis to elide race checks on thread-local data. In this paper, we study the correctness of these two related optimizations when using a partial escape analysis, which identifies objects that are currently thread-local but that may later become thread-shared.

We show that lock elision based on partial escape analysis is unsound for the Java memory model. We also show that race check elision based on a partial escape analysis weakens the precision of dynamic race detectors. Finally, we prove that race check elision based on a partial escape analysis is sound with respect to this weakened, but still useful, notion of precision.

Tue 20 Jun

16:00 - 18:00: FTfJP 2017 - D at Vertex WS217
Chair(s): Radu GrigoreUniversity of Kent
FTfJP-2017-papers16:00 - 16:20
Alessandro MargaraPolitecnico di Milano, Guido SalvaneschiTU Darmstadt
FTfJP-2017-papers16:20 - 16:55
Dustin Rhodes, Cormac FlanaganUniversity of California, Santa Cruz, Stephen FreundWilliams College
FTfJP-2017-papers16:55 - 17:30
Davide AnconaUniversity of Genova, Angelo Ferrando, Luca FranceschiniDIBRIS, University of Genova, Italy, Viviana MascardiDIBRIS, University of Genova, Italy