Abstract | ||
---|---|---|
Type systems that prevent data races are a powerful tool for parallel programming, eliminating whole classes of bugs that are both hard to find and hard to fix. Unfortunately, it is difficult to apply previous such type systems to "real" programs, as each of them are designed around a specific synchronization primitive or parallel pattern, such as locks or disjoint heaps; real programs often have to combine multiple synchronization primitives and parallel patterns. In this work, we present a new permissions-based type system, which we demonstrate is practical by showing that it supports multiple patterns (e.g., task parallelism, object isolation, array-based parallelism), and by applying it to a suite of non-trivial parallel programs. Our system also has a number of theoretical advances over previous work on permissions-based type systems, including aliased write permissions and a simpler way to store permissions in objects than previous approaches. |
Year | DOI | Venue |
---|---|---|
2012 | 10.1007/978-3-642-31057-7_27 | ECOOP |
Keywords | Field | DocType |
new permissions-based type system,race-free parallelism,array-based parallelism,permissions-based type system,parallel programming,multiple pattern,non-trivial parallel program,practical permission,previous work,parallel pattern,previous approach,type system | Synchronization,Separation logic,Programming language,Disjoint sets,Suite,Task parallelism,Computer science,Theoretical computer science,Heap (data structure),Data parallelism | Conference |
Volume | ISSN | Citations |
7313 | 0302-9743 | 11 |
PageRank | References | Authors |
0.65 | 24 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Edwin Westbrook | 1 | 92 | 7.24 |
Jisheng Zhao | 2 | 480 | 24.34 |
Zoran Budimlić | 3 | 297 | 28.95 |
Vivek Sarkar | 4 | 4318 | 409.41 |