Lock Inference Proven Correct
File(s)lock-inference-proven.pdf (223.24 KB)
Accepted version
Author(s)
Drossopoulou, S
Eisenbach, S
Cunningham, D
Type
Conference Paper
Abstract
With the introduction of multi-core CPUs, multi-threaded programming is becoming significantly more popular. Unfortunately, it is difficult for programmers to ensure their code is correct because current languages are too low-level.\r\n\r\nAtomic sections are a recent language primitive that expose a higher level interface to programmers. Thus they make concurrent programming more straightforward. Atomic sections can be compiled using transactional memory or lock inference, but ensuring correctness and good performance is a challenge. Transactional memory has problems with IO and contention, whereas lock inference algorithms are often too imprecise which translates to a loss of parallelism at runtime.\r\n\r\nWe define a lock inference algorithm that has good precision. We give the operational semantics of a model OO language, and define a notion of correctness for our algorithm. We then prove correctness using Isabelle/HOL.\r\n
Date Issued
2008-07
Citation
2008, pp.24-35
Source Title
FTfJP
Start Page
24
End Page
35
Copyright Statement
© The authors
Source
FTfJP
Source Place
Paphos, Cyprus
Start Date
2008-07-08
Finish Date
2008-07-08
Coverage Spatial
Paphos, Cyprus