Interrupting snapshots and the Java[superscript TM] size method
Autor: | Afek, Yehuda, Tzafrir, Moran, Shavit, Nir N. |
---|---|
Přispěvatelé: | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science, Shavit, Nir N. |
Jazyk: | angličtina |
Rok vydání: | 2012 |
Zdroj: | MIT web domain |
Popis: | The Java[superscript TM] developers kit requires a size() operation for all objects, tracking the number of elements in the object. Unfortunately, the best known solution, available in the Java concurrency package, has a blocking concurrent implementation that does not scale. This paper presents a highly scalable wait-free implementation of a concurrent size() operation based on a new lock-free interrupting snapshots algorithm. The key idea behind the new algorithm is to allow snapshot scan methods to interrupt each other until they agree on a shared linearization point with respect to update methods. This contrasts sharply with past approaches to the classical atomic snapshot problem, that have had threads coordinate the collecting of a shared global view. As we show empirically, the new algorithm scales well, significantly outperforming existing implementations. European Union (Project VELOX Grant FP7-ICT-2007-1) |
Databáze: | OpenAIRE |
Externí odkaz: |