PDS – Parallel and Distributed Systems track

Master of computer science

Research project

During the master, a student will learn research by doing research. During the two years of the master, a student will thus spend between one or two days each week in a research group in order to do research projects with professors and PhD students of IP Paris.

Research project schedule

When Where What
13/09/2022 at 10h00 Telecom Paris, (room: 1A312) and online Presentation of project proposals
20/09/2022 Project starts
09/02/2023 TBD Mid-project review (for M1 students), or final evaluation (for M2 students)
17/02/2023 Deadline for submitting the research report
22/06/2023 TBD Project evaluation (for M1 students)
30/06/2023 Deadline for submitting the final research report (for M1 students)

Project Evaluation

Research projects will be evaluated on a research report, and a presentation.

Research report

The report is a expected to be a 5 to 8 pages research paper formatted using the IEEE conference style. The report should present the context of the work, its contribution, a positioning with respect to related works.

Both M1 and M2 students are expected to send their research report by email before friday, 17/02/2023. M1 students are expected to update their report and resubmit it in june (deadline: 30/06/2023).

Project defense

The project defense is a 20 minutes presentation of the research work followed by 5-10 minutes of questions. The presentation has to explain the work context and problematics, and describe the contribution of the conducted research project.

Project defense schedule

The project defense will take place on Tuesday, 7th February in room 4A312 or online at this address.
ScheduleStudentProjectAdvisor
10hAleksandar MaksimovicTowards a scalable multi-kernel for heterogeneous processorsGaël Thomas
10h30Mohamed Iyed El Baouab & Sahar BoussoukayaFAASIN: Bringing UNIX pipes to serverless cloud function pipelinesMathieu Bacou
11hJana ToljagaDisaggregated memory management and implementation of a garbage collector in distributed environmentGaël Thomas
11h30Timothée ZerbibTowards a scalable multi-kernel for heterogeneous processorsGaël Thomas
12h - 14h00Break
14h00Etienne DevauxHigh Performance Serverless ComputingFrançois Trahay
14h30Jean-françois DumollardDesign and implementation of hardened hypervisorGaël Thomas
15h00Victor LaforetScheduler-aware locksJean-Pierre Lozi
15h30 - 15h45Break
15h45Thomas CollignonDynamic Frequency Scaling on GPU for Deep LearningFrançois Trahay
16h15Hatem MnaouerPerformance Evaluation of in situ Applications through Simulation using SimGridValentin Honoré
16h45Dimitrije PanicBalancing Energy Consumption and Comfort in Smart Spaces using the IoTGeorgios Bouloukakis
10/02 at 15h00Ewa TurskaEdge infrastructure reconfiguration of IoT systems using AI planningGeorgios Bouloukakis
15/02 at 14h00Henon Mengistu LamboroStream ReasoningAmel Bouzeghoub

Proposed projects

The following project proposals may be shared with several masters track, including DataAI, HPDA, PDS, Cybersecurity.

IdTitleAdvisorDescriptionStudent
1Forensic performance analysisFrançois Trahayproject description
2High Performance Serverless ComputingFrançois Trahayproject descriptionEtienne Devaux
3Memory allocation trackerFrançois TrahayThe goal of this project is to design a tool able to identify the memory objects that consume the most memory, and how they evolve/grow during the execution (eg. average growth per second)
4Dynamic Frequency Scaling on GPU for Deep LearningFrançois TrahayLarge scale Deep Learning models that require thousands of GPU hours consume a lot of power. This is because they rely on power-hungry GPUs that each consume hundreds of Watts. The goal of this project is to design and implement a dynamic frequency scaling runtime for GPUs. Such a runtime system would monitor the GPUs and adapt their frequency in order to reduce their energy consumption with a limited impact on the application performance.Thomas Collignon
5FAASIN: Bringing UNIX pipes to serverless cloud function pipelinesMathieu Bacouproject descriptionSahar Boussoukaya, Mohamed Iyed El Baouab
6Identifying the source of Linux kernel scheduler regressionsJulia Lawallproject description
7Frugal AI based Neural Decoding and Neurofeedback for Cognitive Training AccelerationVan-Tam Nguyenproject description
8Edge infrastructure reconfiguration of IoT systems using AI planningGeorgios Bouloukakisproject descriptionEwa Turska
9Balancing Energy Consumption and Comfort in Smart Spaces using the IoTGeorgios Bouloukakisproject descriptionDimitrije Panić
10Optical network simulator with cross-layer handling of optical functinalities.Cédric Ware, Mounia Lourdianeproject description
11Disaggregated memory managment for a managed runtimeGaël Thomas, Adam Chader, Mathieu Bacou, Yohan Pipereauproject description
12Evaluation of a privacy-preserving embedded languages for C/Intel SGXGaël Thomas, Subashiny Tanigassalameproject description
13Towards a scalable multi-kernel for heterogeneous processorsGaël Thomas, Mathieu Bacouproject description
14Design and implementation of hardened hypervisorGaël Thomas, Mathieu Bacouproject description
15Scheduler-aware locksJean-Pierre Loziproject description
16State of the Art of micro-services/containers energy consumptionChantal Taconet, Sophie Chabridonproject description
17Performance Evaluation of in situ Applications through Simulation using SimGridValentin Honoréproject description
18Scaling Blockchain with Byzantine Leaderless State-Machine ReplicationPierre Sutraproject description
19Embedded High Power Computing for Low Power Autonomous RoboticsOmar Hammamiproject description
20High Performance Computing Low Power accelerators for data analytics: Beating Energy Consumption While Still Doing the JobOmar Hammamiproject description
21Parallel Algorithm and Implementation of graph processing for social networksOmar Hammamiproject description
22Permissionless asset transfer with shared accountsPetr KuznetsovMost modern asset transfer systems use consensus to maintain a totally ordered chain of transactions. It was recently shown that consensus is not always necessary for implementing asset transfer. More efficient, asynchronous solutions can be built using reliable broadcast instead of consensus. This approach has been originally used in the closed (permissioned) setting.The goal of this project is to implement a permissionless asset transfer systems which uses consensus only when necessary, based on our recent asynchronous proposal [1] for single-user accounts. [1] https://arxiv.org/abs/2105.04966
23Coding for communication-efficient broadcastPetr KuznetsovThe goal of the project is to explore the potential of different encoding strategies for implementing communication-efficient dissemination of information in distributed systems. This is a part of a bigger project on weakly consistent data synchronization in large-scale systems, with applications to cryptocurrencies and blockchains.
24Practical linearizabilityPetr KuznetsovLinearizability [1] is the golden standard of consistency in distributed systems. In essence, a linearizable distributed implementation creates the illusion of an atomic object. Creating this illusion is notoriously costly. The goal of this project is to understand benefits and downsides of relaxed notions of linearizability, which allow well-specified non-atomic behavior under contention. The idea is to start with the recently proposed "intermediate-value" linearizability, generalize it to generic lattice agreement data types [2,3], and see if it pays off in practice. [1] https://drops.dagstuhl.de/opus/volltexte/2020/13080/ [2] https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/Generalized20Lattice20Agreement20-20PODC12.pdf [3] https://drops.dagstuhl.de/opus/volltexte/2020/11817/pdf/LIPIcs-OPODIS-2019-31.pdf
25Stochastic accountability in distributed systemsPetr KuznetsovThere are two major ways to deal with failures in distributed computing: fault-tolerance and accountability. Fault-tolerance intends to anticipate failures by investing into replication and synchronization, so that the system’s correctness is not affected by faulty components. In contrast, accountability enables detecting failures a posteriori and raising undeniable evidence against faulty components. Instead of heading for detecting all observable failures [1,2], which might be extremely costly, we intend to explore the potential of stochastic accountability in generic distributed systems, already addressed in the networking context [3]. The approach is to randomly sample a subset of events in an execution with the goal to detect faulty behavior. As a first step, we intend to focus on gossip-based broadcast algorithms [4] where a malicious source may "equivocate" in order to make correct processes disagree on the messages they deliver. [1] Andreas Haeberlen, Petr Kouznetsov, Peter Druschel:PeerReview: practical accountability for distributed systems. SOSP 2007: 175-188 [2] Andreas Haeberlen, Petr Kuznetsov: The Fault Detection Problem. OPODIS 2009: 99-114 [3] Kashyap Thimmaraju, Liron Schiff, Stefan Schmid: Preacher: Network Policy Checker for Adversarial Environments. SRDS 2019: 32-41 [4] Rachid Guerraoui, Petr Kuznetsov, Matteo Monti, Matej Pavlovic, Dragos-Adrian Seredinschi: Scalable Byzantine Reliable Broadcast. DISC 2019: 22:1-22:16