Interrupting Snapshots and the JavaTM Size() Method
نویسندگان
چکیده
The JavaTM developers kit requires a size() operation for all objects. 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 for the classical atomic snapshot problem. This is perhaps the first example of the potential benefit from using atomic snapshots in real industrial code (the concurrency package is currently deployed on over 10 million desktops). The key idea behind the new algorithm is to allow snapshot scans to interrupt each other until they agree on a shared linearization point with respect to updates, rather than trying, as was done in the past, to have them coordinate the collecting of a shared global view. As we show, the new algorithm scales well, significantly outperforming existing implementations.
منابع مشابه
Flow Visualization by Conditional Sampling of a Single X-Wire Probe in a Very Long Run Experiment
Flow visualization techniques using tracer markers such as die, smoke, hydrogen bubbles, etc., have been widely used in experimental investigations of large scale structures of a variety of flow fields. They have played an important role in understanding the physics of the coherent structures formation and evolution in the transitional as well as the turbulent regions of the flow fields. Howeve...
متن کاملUser Authentication and Authorization in the Java(tm) Platform
JavaTM security technology originally focused on creating a safe environment in which to run potentially untrusted code downloaded from the public network. With the latest release of the JavaTM Platform (the JavaTM 2 Software Development Kit, v 1.2), fine-grained access controls can be placed upon critical resources with regard to the identity of the running applets and applications, which are ...
متن کاملFlow Visualization by Conditional Sampling of a Single X-Wire Probe in a Very Long Run Experiment
Flow visualization techniques using tracer markers such as die, smoke, hydrogen bubbles, etc., have been widely used in experimental investigations of large scale structures of a variety of flow fields. They have played an important role in understanding the physics of the coherent structures' formation and evolution in the transitional as well as the turbulent regions of the flow fields. Howev...
متن کاملSurface Recovery of Noisy Photometric Stereo Using Several Schemes of the 2d Leap-frog Algorithm
Recovering surface from multiple images can be viewed as a problem of finding a solution of a nonlinear PDE system with a large number of parameters. A possible solution to this problem is to break the large scale optimization problem into many overlapped smaller problems, called snapshots. In this project, we investigate the size of snapshots, the optimization methods used to optimize each sna...
متن کاملSnapshot Judgements: Obtaining Data Insights without Tracing
Metadata snapshots are a favored method for gaining filesystem insights due to their small size and relative ease of acquisition compared to access traces [2]. Since snapshots do not include an access history; typically they are used for relatively simple analyses such as file lifetime and size distributions, and researchers still gather and store full block or file access traces for any higher...
متن کامل