Imperial College London

Emeritus ProfessorSusanEisenbach

Faculty of EngineeringDepartment of Computing

Emeritus Professor of Computing
 
 
 
//

Contact

 

s.eisenbach Website

 
 
//

Location

 

Huxley BuildingSouth Kensington Campus

//

Summary

 

Publications

Citation

BibTex format

@inproceedings{Gudka:2012:10.1007/978-3-642-31057-7_15,
author = {Gudka, K and Harris, T and Eisenbach, S},
doi = {10.1007/978-3-642-31057-7_15},
pages = {308--332},
publisher = {Springer},
title = {Lock Inference in the Presence of Large Libraries},
url = {http://dx.doi.org/10.1007/978-3-642-31057-7_15},
year = {2012}
}

RIS format (EndNote, RefMan)

TY  - CPAPER
AB - Atomic sections can be implemented using lock inference. For the implementation of lock inference to be practically useful, it is crucial that large libraries be analysed. Large libraries are challenging for static analysis, due to their cyclomatic complexity.Existing approaches either ignore libraries, require library implementers to annotate which locks to take or only consider accesses performed upto one level deep in library call chains. As a result, some accesses performed within the library may go unprotected, leading to atomicity violations that atomic sections are supposed to eliminate.We present a lock inference approach for Java that analyses library methods in full. We achieve this by (i) formulating lock inference as an Interprocedural Distributive Environment dataflow problem, (ii) using a graph representation for summary information and (iii) applying a number of optimisations to our implementation to reduce space-time requirements. We evaluate the effects of each optimisation and show that propagating only new dataflow information gives the biggest speed up whilst also reducing memory usage. We identify and remove many locks for thread-local and internal objects via simple analyses. We demonstrate the scalability of our approach by analysing the entire GNU Classpath library comprising 122KLOC.
AU - Gudka,K
AU - Harris,T
AU - Eisenbach,S
DO - 10.1007/978-3-642-31057-7_15
EP - 332
PB - Springer
PY - 2012///
SN - 0302-9743
SP - 308
TI - Lock Inference in the Presence of Large Libraries
UR - http://dx.doi.org/10.1007/978-3-642-31057-7_15
UR - http://pubs.doc.ic.ac.uk/lock-inference-large-libraries/
ER -