Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
education [2019/06/17 15:45] zablotch |
education [2026/08/31 16:36] (current) fablpd |
||
|---|---|---|---|
| Line 8: | Line 8: | ||
| \\ | \\ | ||
| - | * [[education/ca_2018|Concurrent Algorithms]] (theory & practice) | + | * [[education/ca_2026|Concurrent Computing (CS-453)]] (theory & practice) |
| - | * [[education/da|Distributed Algorithms]] (theory & practice) | + | * [[education/da_2026|Distributed Algorithms (CS-451)]] (theory & practice) |
| \\ | \\ | ||
| The lab taught in the past the following courses: | The lab taught in the past the following courses: | ||
| Line 28: | Line 28: | ||
| * **[[cryptocurrencies|Cryptocurrencies]]**: We have several project openings as part of our ongoing research on designing new cryptocurrency systems. Please contact [[rachid.guerraoui@epfl.ch|Prof. Rachid Guerraoui]]. | * **[[cryptocurrencies|Cryptocurrencies]]**: We have several project openings as part of our ongoing research on designing new cryptocurrency systems. Please contact [[rachid.guerraoui@epfl.ch|Prof. Rachid Guerraoui]]. | ||
| - | * **Probabilistic Byzantine Resilience**: Development of high-performance, Byzantine-resilient distributed systems with provable probabilistic guarantees. Two options are currently available, both building on previous work on probabilistic Byzantine broadcast: (i) a theoretical project, focused the correctness of probabilistic Byzantine-tolerant distributed algorithms; (ii) a practical project, focused on numerically evaluating of our theoretical results. Please contact [[matteo.monti@epfl.ch|Matteo Monti]] to get more information. | ||
| + | * **Scalable Distributed Cache Coherency**: The distributed cache coherency problem is a critical challenge in modern computing systems, especially as cloud platforms, large-scale web services, and in-memory data grids become increasingly central to industry. In distributed systems, ensuring that all nodes have a consistent view of shared data, even when copies are cached locally, is essential for correctness and reliability. Without coherent caches, stale reads can lead to data races, inconsistency, and subtle bugs—issues that can severely impact services like Amazon DynamoDB, Google Spanner, or Meta’s TAO graph store, where distributed caching is used at massive scale. Companies like Google and Microsoft invest heavily in research and infrastructure (e.g., Tardis, Azure Service Fabric) to implement scalable, low-latency cache coherence protocols across thousands of machines. Efficient distributed cache coherence not only improves performance and availability but also enables stronger consistency guarantees in systems that underpin everything from real-time recommendations to financial transactions. As systems grow more distributed and memory-centric, solving this problem becomes foundational to scaling modern software infrastructures. However, current distributed cache coherency protocols suffer from excessive communication overhead, limiting scalability. The question is how to offset such an overhead while maintaining the overall protocol's performance. If interested, contact [[https://people.epfl.ch/beatrice.shokry|Beatrice Shokry]]. | ||
| - | * **Distributed computing using RDMA and/or NVRAM.** RDMA (Remote Direct Memory Access) allows accessing a remote machine's memory without interrupting its CPU. NVRAM is byte-addressable persistent (non-volatile) memory with access times on the same order of magnitude as traditional (volatile) RAM. These two recent technologies pose novel challenges and raise new opportunities in distributed system design and implementation. Contact [[https://people.epfl.ch/igor.zablotchi|Igor Zablotchi]] for more information. | ||
| - | * **[[Distributed ML|Distributed Machine Learning]]**: contact [[http://people.epfl.ch/georgios.damaskinos|Georgios Damaskinos]] for more information. | ||
| - | * **Robust Distributed Machine Learning**: With the proliferation of big datasets and models, Machine Learning is becoming distributed. Following the standard parameter server model, the learning phase is taken by two categories of machines: parameter servers and workers. Any of these machines could behave arbitrarily (i.e., said Byzantine) affecting the model convergence in the learning phase. Our goal in this project is to build a system that is robust against Byzantine behavior of both parameter server and workers. Our first prototype, AggregaThor(https://www.sysml.cc/doc/2019/54.pdf), describes the first scalable robust Machine Learning framework. It fixed a severe vulnerability in TensorFlow and it showed how to make TensorFlow even faster, while robust. Contact [[https://people.epfl.ch/arsany.guirguis|Arsany Guirguis]] for more information. | ||
| - | * **Stochastic gradient: (artificial) reduction of the ratio variance/norm for adversarial distributed SGD**: One computationally-efficient and non-intrusive line of defense for adversarial distributed SGD (e.g. 1 parameter server distributing the gradient estimation to several, possibly adversarial workers) relies on the honest workers to send back gradient estimations with sufficiently low variance; assumption which is sometimes hard to satisfy in practice. One solution could be to (drastically) increase the batch-size at the workers, but doing so may as well defeat the very purpose of distributing the computation. \\ In this project, we propose two approaches that you can choose to explore (also you may propose a different approach) to (artificially) reduce the ratio variance/norm of the stochastic gradients, while keeping the benefits of the distribution. The first proposed approach, speculative, boils down to "intelligent" coordinate selection. The second makes use of some kind of "momentum" at the workers. \\ [1] [[https://papers.nips.cc/paper/6617-machine-learning-with-adversaries-byzantine-tolerant-gradient-descent|"Machine Learning with Adversaries: Byzantine Tolerant Gradient Descent" ]] \\ [2] [[https://arxiv.org/abs/1610.05492|"Federated Learning: Strategies for Improving Communication Efficiency"]] \\ Contact [[https://people.epfl.ch/sebastien.rouault|Sébastien Rouault]] for more information. | + | * **Accelerating Safe ML Systems:** ML has been a hot topic for so long. Now with LLMs, it is getting even more attractive for everyone in the research community as well as industry (e.g., Google, Meta, etc.). In particular, training large models with massive data makes the need for distributed computing (i.e., distributing tasks among machines) non questionable, which leads to two main challenges. First, how to do it fast? Second, how to do it safe (e.g., secure collaborative training, robust ML, etc.)? At the heart of these two challenges is how to communicate with other machines in a fast and a secure way? This leads us to Remote Direct Memory Access (RDMA) technology which is becoming increasingly important in the field of machine learning (ML), particularly for distributed training of large models and handling massive datasets. RDMA enables high-throughput, low-latency data transfers between servers without involving the CPU, which significantly reduces the overhead associated with traditional networking methods. This is crucial for ML tasks that require rapid synchronization and communication among multiple nodes. Now the question is how to use RDMA efficiently to build fast and secure ML systems? If interested, contact [[https://people.epfl.ch/Beatrice.Shokry?lang=en|Beatrice Shokry]] for more information. |
| - | * **Consistency in global-scale storage systems**: We offer several projects in the context of storage systems, ranging from implementation of social applications (similar to [[http://retwis.redis.io/|Retwis]], or [[https://github.com/share/sharejs|ShareJS]]) to recommender systems, static content storage services (à la [[https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Beaver.pdf|Facebook's Haystack]]), or experimenting with well-known cloud serving benchmarks (such as [[https://github.com/brianfrankcooper/YCSB|YCSB]]); please contact [[http://people.epfl.ch/dragos-adrian.seredinschi|Adi Seredinschi]] or [[https://people.epfl.ch/karolos.antoniadis|Karolos Antoniadis]] for further information. | + | * **Distributed Resource Efficient Inference Engine**: The software stack for running efficient Generative AI inference is tuned for data centers, optimized for uniform, well connected hardware monitored by expert teams. While this is perfect for hyperscalars, many private companies and public institutions of every sizes have raising concerns about privacy and sovereignty, and yet, are unable to deploy their own GenAI software stack. The DCL and its recent spin-off Anyway have developed a distributed inference engine, called "Anyd" to address these issues. Anyd aggregates hardware from different generations and different vendors, connected by any network, into a unified cluster that automatically decides how to use these resources to run inference and handles failures transparently. Projects of this category aim to address the specific challenges that come with the distributed and automatically managed nature of Anyd. Contact [[https://people.epfl.ch/geovani.rizk?lang=en|Geovani Rizk]] for more information. |
| + | |||
| + | |||
| + | |||
| + | |||
| \\ | \\ | ||
| + | |||
| + | |||
| + | \\ | ||
| ===== Semester Projects ===== | ===== Semester Projects ===== | ||
| Line 50: | Line 54: | ||
| If the subject of a Master Project interests you as a Semester Project, please contact the supervisor of the Master Project to see if it can be considered for a Semester Project. | If the subject of a Master Project interests you as a Semester Project, please contact the supervisor of the Master Project to see if it can be considered for a Semester Project. | ||
| - | EPFL I&C duration, credits and workload information are available [[https://www.epfl.ch/schools/ic/education/|here]]. Don't hesitate to contact the project supervisor if you want to complete your Semester Project outside the regular semester period. | + | EPFL I&C duration, credits and workload information are available on [[https://www.epfl.ch/schools/ic/education/master/semester-project-msc/|https://www.epfl.ch/schools/ic/education/master/semester-project-msc/]]. |
| + | |||