Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Francesco Quaglia is active.

Publication


Featured researches published by Francesco Quaglia.


international conference on distributed computing systems | 2012

When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Data Replication

Sebastiano Peluso; Pedro Ruivo; Paolo Romano; Francesco Quaglia; Luís E. T. Rodrigues

In this article we introduce GMU, a genuine partial replication protocol for transactional systems, which exploits an innovative, highly scalable, distributed multiversioning scheme. Unlike existing multiversion-based solutions, GMU does not rely on a global logical clock, which represents a contention point and can limit system scalability. Also, GMU never aborts read-only transactions and spares them from distributed validation schemes. This makes GMU particularly efficient in presence of read-intensive workloads, as typical of a wide range of real-world applications. GMU guarantees the Extended Update Serializability (EUS) isolation level. This consistency criterion is particularly attractive as it is sufficiently strong to ensure correctness even for very demanding applications (such as TPC-C), but is also weak enough to allow efficient and scalable implementations, such as GMU. Further, unlike several relaxed consistency models proposed in literature, EUS has simple and intuitive semantics, thus being an attractive, scalable consistency model for ordinary programmers. We integrated the GMU protocol in a popular open source in-memory transactional data grid, namely Infinispan. On the basis of a large scale experimental study performed on heterogeneous experimental platforms and using industry standard benchmarks (namely TPC-C and YCSB), we show that GMU achieves linear scalability and that it introduces negligible overheads (less than 10%), with respect to solutions ensuring non-serializable semantics, in a wide range of workloads.


international middleware conference | 2012

SCORe: a scalable one-copy serializable partial replication protocol

Sebastiano Peluso; Paolo Romano; Francesco Quaglia

In this article we present SCORe, a scalable one-copy serializable partial replication protocol. Differently from any other literature proposal, SCORe jointly guarantees the following properties: (i) it is genuine, thus ensuring that only the replicas that maintain data accessed by a transaction are involved in its processing, and (ii) it guarantees that read operations always access consistent snapshots, thanks to a one-copy serializable multiversion scheme, which never aborts read-only transactions and spares them from any (distributed) validation phase. This makes SCORe particularly efficient in presence of read-intensive workloads, as typical of a wide range of real-world applications. We have integrated SCORe into a popular open source distributed data grid and performed a large scale experimental study with well-known benchmarks using both private and public cloud infrastructures. The experimental results demonstrate that SCORe provides stronger consistency guarantees (namely One-Copy Serializability) than existing multiversion partial replication protocols at no additional overhead.


IEEE Transactions on Parallel and Distributed Systems | 2001

A cost model for selecting checkpoint positions in time warp parallel simulation

Francesco Quaglia

Recent papers have shown that the performance of Time Warp simulators can be improved by appropriately selecting the positions of checkpoints, instead of taking them on a periodic basis. In this paper, we present a checkpointing technique in which the selection of the positions of checkpoints is based on a checkpointing-recovery cost model. Given the current state S, the model determines the convenience of recording S as a checkpoint before the next event is executed. This is done by taking into account the position of the last taken checkpoint, the granularity (i.e., the execution time) of intermediate events, and using an estimate of the probability that S will have to be restored due to rollback in the future of the execution. A synthetic benchmark in different configurations is used for evaluating and comparing this approach to classical periodic techniques. As a testing environment we used a cluster of PCs connected through a Myrinet switch coupled with a fast communication layer specifically designed to exploit the potential of this type of switch. The obtained results point out that our solution allows faster execution and, in some cases, exhibits the additional advantage that less memory is required for recording state vectors. This possibly contributes to further performance improvements when memory is a critical resource for the specific application. A performance study for the case of a cellular phone system simulation is finally reported to demonstrate the effectiveness of this solution for a real world application.


IEEE Transactions on Parallel and Distributed Systems | 2003

Nonblocking checkpointing for optimistic parallel simulation: description and an implementation

Francesco Quaglia; Andrea Santoro

Describes a nonblocking checkpointing mode in support of optimistic parallel discrete event simulation. This mode allows real concurrency in the execution of state saving and other simulation specific operations (e.g, event list update, event execution) with the aim of removing the cost of recording state information from the completion time of the parallel simulation application. We present an implementation of a C library supporting nonblocking checkpointing on a myrinet based cluster, which demonstrates the practical viability of this checkpointing mode on standard off-the-shelf hardware. By the results of an empirical study on classical parameterized synthetic benchmarks, we show that, except for the case of minimal state granularity applications, nonblocking checkpointing allows improvement of the speed of the parallel execution, as compared to commonly adopted, optimized checkpointing methods based on the classical blocking mode. A performance study for the case of a personal communication system (PCS) simulation is additionally reported to point out the benefits from nonblocking checkpointing for a real world application.


IEEE Transactions on Parallel and Distributed Systems | 1999

An index-based checkpointing algorithm for autonomous distributed systems

Roberto Baldoni; Francesco Quaglia; Paolo Fornara

This paper presents an index-based checkpointing algorithm for distributed systems with the aim of reducing the total number of checkpoints while ensuring that each checkpoint belongs to at least one consistent global checkpoint (or recovery line). The algorithm is based on an equivalence relation defined between pairs of successive checkpoints of a process which allows us, in some cases, to advance the recovery line of the computation without forcing checkpoints in other processes. The algorithm is well-suited for autonomous and heterogeneous environments, where each process does not know any private information about other processes and private information of the same type of distinct processes is not related (e.g., clock granularity, local checkpointing strategy, etc.). We also present a simulation study which compares the checkpointing-recovery overhead of this algorithm to the ones of previous solutions.


international conference on autonomic computing | 2012

Transactional auto scaler: elastic scaling of in-memory transactional data grids

Diego Didona; Paolo Romano; Sebastiano Peluso; Francesco Quaglia

In this paper we introduce TAS (Transactional Auto Scaler), a system for automating elastic-scaling of in-memory transactional data grids, such as NoSQL data stores or Distributed Transactional Memories. Applications of TAS range from on-line self-optimization of in-production applications to automatic generation of QoS/cost driven elastic scaling policies, and support for what-if analysis on the scalability of transactional applications. The key innovation at the core of TAS is a novel performance forecasting methodology that relies on the joint usage of analytical modeling and machine-learning. By exploiting these two, classically competing, methodologies in a synergic fashion, TAS achieves the best of the two worlds, namely high extrapolation power and good accuracy even when faced with complex workloads deployed over public cloud infrastructures. We demonstrate the accuracy and feasibility of TAS via an extensive experimental study based on a fully fledged prototype implementation, integrated with a popular open-source transactional in-memory data store (Red Hats Infinispan), and industry-standard benchmarks generating a breadth of heterogeneous workloads.


symposium on reliable distributed systems | 1998

A VP-accordant checkpointing protocol preventing useless checkpoints

Roberto Baldoni; Francesco Quaglia; Bruno Ciciani

A useless checkpoint corresponds to the occurrence of a checkpoint and communication pattern called Z-cycle. A recent result shows that ensuring a computation without Z-cycles is a particular application of a property, namely Virtual Precedence (VP), defined on an interval-based abstraction of a computation. We first propose a taxonomy of communication-induced checkpointing protocols based on the way they ensure the VP property. Then we derive a sufficient condition ensuring no Z-cycles in a distributed computation. This condition defines a checkpoint and communication pattern, namely suspect Z-cycle, such that if no suspect Z-cycle exists in a distributed computation then no Z-cycle exists. We present finally a communication-induced checkpointing protocol that avoids useless checkpoints by preventing on-the-fly the formation of suspect Z-cycles and discuss its performance with respect to other protocols.


modeling, analysis, and simulation on computer and telecommunication systems | 2012

Machine Learning-Based Self-Adjusting Concurrency in Software Transactional Memory Systems

Diego Rughetti; Pierangelo Di Sanzo; Bruno Ciciani; Francesco Quaglia

One of the problems of Software-Transactional-Memory (STM) systems is the performance degradation that can be experienced when applications run with a non-optimal concurrency level, namely number of concurrent threads. When this level is too high a loss of performance may occur due to excessive data contention and consequent transaction aborts. Conversely, if concurrency is too low, the performance may be penalized due to limitation of both parallelism and exploitation of available resources. In this paper we propose a machine-learning based approach which enables STM systems to predict their performance as a function of the number of concurrent threads in order to dynamically select the optimal concurrency level during the whole lifetime of the application. In our approach, the STM is coupled with a neural network and an on-line control algorithm that activates or deactivates application threads in order to maximize performance via the selection of the most adequate concurrency level, as a function of the current data access profile. A real implementation of our proposal within the TinySTM open-source package and an experimental study relying on the STAMP benchmark suite are also presented. The experimental data confirm how our self-adjusting concurrency scheme constantly provides optimal performance, thus avoiding performance loss phases caused by non-suited selection of the amount of concurrent threads and associated with the above depicted phenomena.


ieee international symposium on distributed simulation and real time applications | 2007

A Lightweight Heuristic-based Mechanism for Collecting Committed Consistent Global States in Optimistic Simulation

Diego Cucuzzo; Stefano D'Alessio; Francesco Quaglia; Paolo Romano

In this paper we study how to reuse checkpoints taken in an uncorrelated manner during the forward execution phase in an optimistic simulation system in order to construct global consistent snapshots which are also committed (i.e. the logical time they refer to is lower than the current GVT value). This is done by introducing a heuristic-based mechanism relying on update operations applied to local committed checkpoints of the involved logical processes so to eliminate mutual dependencies among the final achieved state values. The mechanism is lightweight since it does not require any form of (distributed) coordination to determine which are the checkpoint update operations to be performed. At the same time it is likely to reduce the amount of checkpoint update operations required to realign the consistent global state exactly to the current GVT value, taken as the reference time for the snapshot. Our proposal can support, in a performance effective manner, termination detection schemes based on global predicates evaluated on a committed and consistent global snapshot, which represent an alternative as relevant as classical termination check only relying on the current GVT value. Another application concerns interactive simulation environments, where (aggregate) output information about committed and consistent snapshots needs to be frequently provided, hence requiring lightweight mechanisms for the construction of the snapshots.


modeling, analysis, and simulation on computer and telecommunication systems | 2008

A Performance Model of Multi-Version Concurrency Control

P. di Sanzo; Bruno Ciciani; Francesco Quaglia; Paolo Romano

In this article we present a performance model for multi-version concurrency control (MVCC). This type of concurrency control is currently very popular among mainstream commercial and open source database systems thanks to its ability to well cope with read intensive workloads, as in the case of transaction profiles proper of Web applications. To build the model we had to tackle the intrinsic higher complexity of MVCC when compared to traditional concurrency control mechanisms (i.e. 2-phase-locking and optimistic ones), such as the joint use of locks and aborts to resolve direct conflicts among write accesses to the same data item, and the management of multiple data versions. We validate our analytical model via an extensive simulation study, considering both uniform and skewed data accesses, as well as differentiated transaction profiles. To the best of our knowledge, the present study provides the first analytical model of MVCC.

Collaboration


Dive into the Francesco Quaglia's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Bruno Ciciani

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar

Andrea Santoro

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar

Paolo Romano

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Roberto Vitali

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar

Diego Rughetti

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar

Mauro Ianni

Sapienza University of Rome

View shared research outputs
Top Co-Authors

Avatar

Roberto Baldoni

Sapienza University of Rome

View shared research outputs
Researchain Logo
Decentralizing Knowledge