160,932 research outputs found
Bounded Concurrent Timestamp Systems Using Vector Clocks
Shared registers are basic objects used as communication mediums in
asynchronous concurrent computation. A concurrent timestamp system is a higher
typed communication object, and has been shown to be a powerful tool to solve
many concurrency control problems. It has turned out to be possible to
construct such higher typed objects from primitive lower typed ones. The next
step is to find efficient constructions. We propose a very efficient wait-free
construction of bounded concurrent timestamp systems from 1-writer multireader
registers. This finalizes, corrects, and extends, a preliminary bounded
multiwriter construction proposed by the second author in 1986. That work
partially initiated the current interest in wait-free concurrent objects, and
introduced a notion of discrete vector clocks in distributed algorithms.Comment: LaTeX source, 35 pages; To apper in: J. Assoc. Comp. Mac
A longitudinal study of phonological processing skills and reading in bilingual children
French/English bilingual children (N=40) in French language schools participated in an 8-month longitudinal study of the relation between phonological processing skills and reading in French and English. Participants were administered measures of phonological awareness, working memory, naming speed, and reading in both languages. The results of the concurrent analyses show that phonological awareness skills in both French and English were uniquely predictive of reading performance in both languages after accounting for the influences of cognitive ability, reading ability, working memory, and naming speed. These findings support the hypothesis that phonological awareness is strongly related to beginning word reading skill in an alphabetic orthography. The results of the longitudinal analyses also suggest that orthographic depth influences phonological factors related to reading
Verification of Shared-Reading Synchronisers
Synchronisation classes are an important building block for shared memory
concurrent programs. Thus to reason about such programs, it is important to be
able to verify the implementation of these synchronisation classes, considering
atomic operations as the synchronisation primitives on which the
implementations are built. For synchronisation classes controlling exclusive
access to a shared resource, such as locks, a technique has been proposed to
reason about their behaviour. This paper proposes a technique to verify
implementations of both exclusive access and shared-reading synchronisers. We
use permission-based Separation Logic to describe the behaviour of the main
atomic operations, and the basis for our technique is formed by a specification
for class AtomicInteger, which is commonly used to implement synchronisation
classes in java.util.concurrent. To demonstrate the applicability of our
approach, we mechanically verify the implementation of various synchronisation
classes like Semaphore, CountDownLatch and Lock.Comment: In Proceedings MeTRiD 2018, arXiv:1806.0933
A Wait-free Multi-word Atomic (1,N) Register for Large-scale Data Sharing on Multi-core Machines
We present a multi-word atomic (1,N) register for multi-core machines
exploiting Read-Modify-Write (RMW) instructions to coordinate the writer and
the readers in a wait-free manner. Our proposal, called Anonymous Readers
Counting (ARC), enables large-scale data sharing by admitting up to
concurrent readers on off-the-shelf 64-bits machines, as opposed to the most
advanced RMW-based approach which is limited to 58 readers. Further, ARC avoids
multiple copies of the register content when accessing it---this affects
classical register's algorithms based on atomic read/write operations on single
words. Thus it allows for higher scalability with respect to the register size.
Moreover, ARC explicitly reduces improves performance via a proper limitation
of RMW instructions in case of read operations, and by supporting constant time
for read operations and amortized constant time for write operations. A proof
of correctness of our register algorithm is also provided, together with
experimental data for a comparison with literature proposals. Beyond assessing
ARC on physical platforms, we carry out as well an experimentation on
virtualized infrastructures, which shows the resilience of wait-free
synchronization as provided by ARC with respect to CPU-steal times, proper of
more modern paradigms such as cloud computing.Comment: non
Extending Eventually Consistent Cloud Databases for Enforcing Numeric Invariants
Geo-replicated databases often operate under the principle of eventual
consistency to offer high-availability with low latency on a simple key/value
store abstraction. Recently, some have adopted commutative data types to
provide seamless reconciliation for special purpose data types, such as
counters. Despite this, the inability to enforce numeric invariants across all
replicas still remains a key shortcoming of relying on the limited guarantees
of eventual consistency storage. We present a new replicated data type, called
bounded counter, which adds support for numeric invariants to eventually
consistent geo-replicated databases. We describe how this can be implemented on
top of existing cloud stores without modifying them, using Riak as an example.
Our approach adapts ideas from escrow transactions to devise a solution that is
decentralized, fault-tolerant and fast. Our evaluation shows much lower latency
and better scalability than the traditional approach of using strong
consistency to enforce numeric invariants, thus alleviating the tension between
consistency and availability
The Monte Carlo Program KoralW version 1.51 and The Concurrent Monte Carlo KoralW&YFSWW3 with All Background Graphs and First Order Corrections to W-Pair Production
The version 1.51 of the Monte Carlo (MC) program KoralW for all processes is presented. The most important change
since the previous version 1.42 is the facility for writing MC events on the
mass storage device and re-processing them later on. In the re-processing one
may modify parameters of the Standard Model in order to fit them to
experimental data. Another important new feature is a possibility of including
complete corrections to double-resonant W-pair
component-processes in addition to all background (non-WW) graphs. The
inclusion is done with the help of the YFSWW3 MC event generator for fully
exclusive differential distributions (event-per-event). Technically, it is done
in such a way that YFSWW3 runs concurrently with KoralW as a separate slave
process, reading momenta of the MC event generated by KoralW and returning the
correction weight to KoralW. KoralW introduces the
correction using this weight, and finishes processing the event (rejection due
to total MC weight, hadronization, etc.). The communication between KoralW and
YFSWW3 is done with the help of the FIFO facility of the UNIX/Linux operating
system. This does not require any modifications of the FORTRAN source codes.
The resulting Concurrent MC event generator KoralW&YFSWW3 looks from the user's
point of view as a regular single MC event generator with all the standard
features.Comment: 8 figures, 5 tables, submitted to Comput. Phys. Commu
- …