João Carlos Moreira Fernandes
Speculative Execution on Replicated and Distributed Software Transactional Memory Systems
Tese submetida para provas de mestrado em Engenharia Informática e de Computadores
Instituto Superior Técnico, Universidade Técnica de Lisboa.
This work describes and evaluates SPECULA, a distributed and
replicated software transactional memory system based on a
certification scheme. This system tackles the negative effects of
network latency, through the optimistic execution of
code. Transactions are executed on a single node, in an uncoordinated
fashion, and the result of their local validation is used as a
prediction of the result of the final validation. The results of
speculatively executed transactions (i.e., the modifications to the
transactional state) are made visible to future transactions in an
optimistic fashion. This speculative process repeats itself, creating
a chain of speculatively executed transactions. If the final
validation of a speculatively committed transaction allows it to
commit system-wide, its result is made definitive; otherwise, a
cascading abort takes place and the system restarts its execution in
the state that preceded the mis-speculation. This speculative behavior
is fully transparent for both the application and the programmer. The
proposed design was evaluated using well known benchmarks that
exercise very different scenarios, namely, Bank Benchmark and
- Speculative Execution on Replicated and Distributed Software Transactional Memory Systems
- João Carlos Moreira
- MSc Thesis. Instituto Superior Técnico,
Universidade Técnica de Lisboa.
- October, 2011.
- Available BibTeX, MSC Thesis, extended abstract of the
thesis, and mid-term
- SPECULA: um Protocolo de Replicação Preditiva para
Memória Transaccional por Software Distribuída.
- J. Fernandes, N. Carvalho, P. Romano, and L. Rodrigues.
- Actas do terceiro Simpósio de Informática
(Inforum), Coimbra, Portugal, Sep, 2011
- Available BibTeX, extended
- SPECULA: Speculative Replication of Software
- S. Peluso, J. Fernandes,
P. Romano, F. Quaglia and L. Rodrigues.
- Proceedings of the 31st
International Symposium on Reliable Distributed Systems (SRDS 2012),
Irvine, California, USA, October 2012.