Parallel and Distributed Systems
Within this research topic, we focus on theoretical and practical aspects of parallel and distributed systems, ranging from geo-distributed databases to high-performance runtimes, data analytics platforms, cloud runtimes and blockchains. Our main goal is to improve the correctness and performance of these systems.
To this end, we enforce correctness by proposing new theoretical models and by exploring recent connections with well-known mathematical fields such as combinatorial topology. We also evaluate software in depth by devising performance models and profiling tools (e.g., EZTrace or NumaMMA). We improve performance of distributed and parallel systems by designing, developing and evaluating new mechanisms to various key concerns in modern computing, including accountability in large-scale distributed replicated services and blockchains, green scalable blockchains, performance prediction, replication in geo-distributed systems, distributed computing with GPUs for large data analytics, or data persistence using non-volatile memory.