Anno: 
2017
Nome e qualifica del proponente del progetto: 
sb_p_728221
Abstract: 

One limitation of current Software Transactional
Memory (STM) implementations is that a transaction that
has already become inconsistent because of updates of data
it has accessed by concurrently committing transactions is
anyhow allowed to run up to either its commit request or
its next transactional shared-data access. These are the points
where the STM layer gains control back from the application
code and can perform transaction re-validation. However, these
explicit interactions with the STM layer may occur well after
the materialization of the inconsistency of the transaction,
leading to waste of CPU time and low energy efficiency. In this
project we pursue timeliness of re-validation via the introduction of analytical models aimed at predicting the best moments for
attempting a proactive re-validation of the running transaction.
With this approach we aim at probabilistically aborting a no
longer consistent transaction way before the STM layer is
able to perform the same kind of midway consistency check
thanks to an explicit interaction requested by the overlying
application code. To inject model-based re-validation points
along the lifetime of the transaction we plan to exploit a Linux kernel module whose target is the one of enabling a control flow variation along threads running transactions with very fine time-granularity. Therefore it would allow triggering re-validation at the exact optimal point (or around it) that was predicted by the analytical models. We plan to experiment our approach within the well-known open source TinySTM platform and the TPC-C benchmark. The relevance of this research line is the one of improving both completion timeliness and energy consumption of transactions in modern applications hosted by last generation multi-core machines.

Componenti gruppo di ricerca: 
sb_cp_is_928776
sb_cp_es_109479
sb_cp_es_109478
Innovatività: 

In order to be able to change the execution flow of a thread with an adequate timing support we will rely on fully innovative on ad-hoc timer-management facilities we embed within the operating system, particularly Linux. These facilities will provide a suited-grain discretization of the points along the wall-clock-time axis where the user-space execution flow of the thread can be varied for performing proactive re-validation, thus enabling
re-validation to be carried out in close matching (in terms of optimality of the re-validation instant) to what determined by the analytical models. The discretized time-instant that best matches the instant predicted by the analytical model will be in our plan selected via a fast binary search
procedure.

The model-based proactive revalidation architecture that will be designed and implemented in this project sill be integrated with the open source TinySTM package [3] and is released as open source2. This will efinitly help dissemination an the possibility for both final used an other researches to exploit the outcomes of the project. This will also provide the possibility to create additional networks for both national an international collaborations on the hard topic of making in-memory transactional systems both performance an energy efficient.

In our plan the experimental assessment for demonstrating the effectiveness of our ideas an design will be be based in running a port of the TPC-C industry benchmark to STM on top of a cluster of 32-core HP ProLiant machines which are currently available in the HPDCS computing Lab at the DIAG Department.

To the best of our knowledge, this project will represent the first attempt to cope with the difficult task of modeling and predicting the staleness of in memory transactions with the extremely fine granularity associated with the interval between twi subsequent accesses to shared data within the STM store. As already discussed, other works base on prediction models capture STM dynamics at a much high abstraction level, an with no possibility to predict staleness according to such a fine-grain timing. Consequently, the modeling approach to performance we will provide with this project will constitute an additional fully new contribution to the research area of performance optimization of computing systems.

Further, the fine control on energy optimization that we will support with the software architecture we plan to evelop stands as a fully new solution, given that nowaays approaches are still based on coarse grain methods relying on fully switching off components, rather than avoiding waste of their usage in scenarios with active workload.

Overall, the present project will provide fully innovative research contributions for the whole set of the following items:
- (operating) system software architecture
- performance modeling
- energy efficiency techniques
- transparency of the run time optimization of modern applications

Codice Bando: 
728221
Keywords: 

© Università degli Studi di Roma "La Sapienza" - Piazzale Aldo Moro 5, 00185 Roma