We introduce lock allocation, an automatic technique that takes a multi-threaded program annotated with atomic sections (that must be executed atomically), and infers a lock assig...
Michael Emmi, Jeffrey S. Fischer, Ranjit Jhala, Ru...
Background: Evolutionary analysis provides a formal framework for comparative analysis of genomic and other data. In evolutionary analysis, observed data are treated as the termin...
Thomas Hladish, Vivek Gopalan, Chengzhi Liang, Wei...
1 Step-wise refinement (SWR) asserts that complex programs can be derived from simple programs by progressively adding features. The length of a program specification is the number...
Building a configuration management (CM) system is a difficult endeavor that regularly requires tens of thousands of lines of code to be written. To reduce this effort, several ex...
We demonstrate that data reordering can substantially improve the performance of fine-grained irregular sharedmemory benchmarks, on both hardware and software shared-memory syste...