Abstract | ||
---|---|---|
This paper describes Kilim, a framework that employs a combination of techniques to help create robust, massively concurrent systems in mainstream languages such as Java: (i) ultra-lightweight, cooperatively-scheduled threads (actors), (ii) a message-passing framework (no shared memory, no locks) and (iii) isolation-aware messaging.Isolation is achieved by controlling the shape and ownership of mutable messages --- they must not have internal aliases and can only be owned by a single actor at a time. We demonstrate a static analysis built around isolation type qualifiers to enforce these constraints.Kilim comfortably scales to handle hundreds of thousands of actors and messages on modest hardware. It is fast as well --- task-switching is 1000x faster than Java threads and 60x faster than other lightweight tasking frameworks, and message-passing is 3x faster than Erlang (currently the gold standard for concurrency-orientedprogramming). |
Year | DOI | Venue |
---|---|---|
2008 | 10.1007/978-3-540-70592-5_6 | ECOOP |
Keywords | Field | DocType |
isolation type qualifier,mainstream language,concurrent system,isolation-typed actors,gold standard,isolation-aware messaging,message-passing framework,lightweight tasking framework,internal alias,cooperatively-scheduled thread,java thread,message passing,static analysis,task switching,shared memory | Message type,Programming language,Shared memory,Java threads,Computer science,Erlang (programming language),Static analysis,Thread (computing),Actor model and process calculi,Java | Conference |
Citations | PageRank | References |
105 | 3.38 | 20 |
Authors | ||
2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Sriram Srinivasan | 1 | 379 | 27.92 |
Alan Mycroft | 2 | 1325 | 186.64 |