Advanced Proactive Caching for Heterogeneous Storage Systems

This project targets improving the performance of distributed storage systems, such as Ceph, by developing novel caching frameworks that (1) take into account request heterogeneity, and (2) perform proactive caching decisions (a.k.a., speculative prefetching). ...

Automated detection of memory safety vulnerabilities in Rust

In comparison to C, the Rust language provides significant memory safety guarantees through its concept of lifetimes and its borrow-checker. However, Rust has an “unsafe” keyword which suspends some of the compiler’s safety checks within a specified code...

Tuning the Linux kernel

The Linux kernel is a complicated piece of software with multiple components interacting with each other in complex ways. The performance and resource consumption of a particular application depends, among many things, on configuration/tuning parameters and policies...

Disinformation Detection at Scale

The increased prevalence of fake and manipulated visual media on the Internet has led to social and technical dilemmas in need of solutions. From political memes meant to influence elections to dishonest scientists fabricating experimental results, the landscape of...

Characterizing and optimizing reactive systems, a continuum language-runtime

This research project was kicked off by a paper we published in REBLS 2021. This paper aimed at comparing the costs and benefits of three different reactive streams libraries for Java: do mature and complex libraries implementing involved optimizations perform better than newer libraries sacrificing such optimizations for a simpler codebase?