Topics for new thesis 2021/22 (tentative list)

Thesis can be developed either in Alameda or Taguspark campi. All thesis have the possibility of a research grant.

Interested? Drop me an email and we can talk about these (or other) topics.

Exploiting persistent memory with memory transactions

[Co-supervised with Paolo Romano]

With the emergence of byte-addressable Persistent Memory (PM), the abstraction of persistent memory transactions seems the most appealing one to build future programs that are both concurrent and crash-consistent.
A number of proposals have emerged recently, both based on software and hardware, to support persistent memory transactions on the current generation of Intel Scalable Xeon processors.

In the latest generation of Intel Scalable Xeon, Intel supports the eADR feature, which allows the contents of CPU caches to be saves (to PM) when a system failure occurs.
This means that existing proposals can be redesigned to take advantage of the new eADR feature.
Still, such optimizations are far from trivial.

This thesis will study this new problem, focusing on how state-of-the-art solutions such as SPHT [1] can be optimized in eADR-based systems.



Exascale programming on distributed shared memory

[Co-supervised with José Monteiro]

The EPEEC project ( focuses on new parallel programming platforms for high-productivity of high-performance computing applications for pre-exascale systems.

This thesis will consider the distributed shared memory (DSM) model, which is being developed with the OmpSs+ArgoDSM platform in the context of EPEEC.

The thesis will depart from a specific application: the Particle-In-Cell (PIC) method, a well studied means of investigating the behaviour of different kinds of systems involving electrons, ions, neutrals, molecules, dust particles, etc. Departing from a task-based parallel single-node implementation, the thesis develop a new implementation to run on top of ArgoDSM. This effort will allow a better understanding of the virtues and limitations of the current generation of DSM.



Empowerging eBPF with hardware memory transactions

eBPF is a "revolutionary technology that can run sandboxed programs in the Linux kernel without changing kernel source code or loading a kernel module".
Still, eBPF poses many restrictions to the sandboxed programs that are allowed to run inside the kernel.

The goal of this thesis is to study the feasibility of hardware memory transactions (as supported in Intel Xeon processors and IBM POWER9, etc.) as a lightweight sandboxing that allows more expressive programs to be accepted in eBPF.
When executed in a hardware memory transaction, the transactional code executes with many restrictions (both on the allowed instruction set, and on the accessible address space), which cause the transaction to abort if violated. Although not originally designed as a sandboxing mechanism, the thesis will study whether hardware memory transactions can also serve that role.



QoS-aware worload consolidation for next-generation clouds

The recent emergence of novel hardware-based resource partitioning mechanisms has unveiled the opportunity for a new generation of QoS-aware resource allocation approaches for workload consolidation. Still, to the best of our knowledge, existing proposals are, by design, tailored to single-socket architectures only, which is at odds with the growing prevalence of multi-socket systems in contemporary warehouse-scale data centers. Furthermore, they are not tailored to the dominant trend of microservices-based systems.

This thesis aims at revisiting the current state-of-the-art in QoS-aware resource allocation systems to take these two trends (multi-socket and microservices) into account.



Enhancing sharded blockchains with a consensusless confirmation fast-path

[Co-supervised with Miguel Matos]

Since Nakamoto’s seminal proposal launched the rise of permissionless blockchains, ground-breaking proposals have emerged to mitigate its performance shortcomings. Despite substantial throughput and energy efficiency achievements, most proposals only bring modest (or marginal) gains in transaction
commit latency. Consequently, confirmation latencies in today’s permissionless blockchain landscape remain prohibitive for latency-sensitive geo-distributed applications.

Recently, proposals such as Elastico, OmniLedger, Rapid-Chain, Monoxide or Ethereum 2.0 resort to multiple parallel blockchains cooperating via sharding, where a small committee maintains each shard. 
This is a very promising approach that achieves substantial throughput gains (up to thousands of transactions per second). Still, sharding does not typically reduce confirmation latency.

This thesis will study how sharded blockchains can be extended with a fast-path that, based on quick "consensusless" protocols, is able to safely anticipate the confirmation of transactions/blocks in most cases.