Major Parallel and Distributed Systems (PDS)
| Program | Computer Science |
| Track | Foundations of computer science, Operations research, Distributed computing, and Quantum computing (FODQ) |
| ECTS Credits | 120 |
| Language | English |
| Orientation | Research |
| Location | Palaiseau Campus |
| Course duration | 2 Years, full time |
| Course start | September |
| Degree awarded | Master’s degree |
WHY ENROLL IN THIS PROGRAM?
Asset n° 1
Gain experience through a research Internship
Asset n°2
Prepare for a PhD
Asset n°3
Acquire the skills and experience to become an R&D engineer
The Parallel and Distributed Systems (PDS) major is a research-oriented major of the FODQ track of the Master in Computer Science at IP Paris. It aims to train the next generation of researchers and top-level engineers who will lead innovation in the field of parallel and distributed systems.
Parallel and distributed systems are ubiquitous in many applications of our daily life (AI applications, online games, social networks, web services, healthcare simulations…). These systems distribute computation across many computing units because they must sustain massive workloads that cannot fit on a single computer.
Designing efficient, correct, and easy-to-maintain parallel and distributed systems is challenging. This challenge is inherent to the complexity of managing multiple machines, numerous users, and very large data sets. In the PDS major, students learn how to address these challenges and their related research questions. Students in the major learn both the theory and practice that underpin such systems, with courses ranging from operating systems, compilation, and large-scale distributed middleware to the algorithmic and mathematical foundations of distributed and parallel systems.
Objectives
- Train the next generation of researchers and engineers to lead innovation in parallel and distributed systems.
- Master the theoretical and practical skills to design efficient, correct, and maintainable parallel and distributed systems at the highest level.
- Develop research-oriented expertise through specialized projects and seminars, preparing students for a career in computer science research
Students that successfully complete the 2-year program will be able to:
- pursue a Ph.D. degree in areas related to Computer Science and distributed system (including Cloud computing, High Performance Computing, ...).
- work in R&D departments of companies and contribute to develop innovative solutions.
| Course Title | Hours / ECTS / Language |
| M1 Research Projects | 0h / 30 / English |
| M2 Research Projects | 0h / 12.5 / English |
| M2 master thesis | 0h / 30 / English |
| M1 PDS Seminar | 24h / 2.5 / English |
| M2 PDS Seminar | 24h / 2.5 / English |
| High performance runtimes | 45h / 5 / English |
| Middleware and software architecture for distributed applications | 45h / 5 / English |
| Data analytic infrastructures | 45h / 5 / English |
| Cloud infrastructures | 45h / 5 / English |
| Advanced programming of multi-core architectures | 45h / 5 / English |
| From the Internet to the IoT | 45h / 5 / English |
| An Introduction to Computer Architecture and Operating Systems | 45h / 5 / English |
| Distributed Data Structures, with a Spotlight on Blockchains | 45h / 5 / English |
| Safe Intelligent Systems | 45h / 5 / English |
| Distributed computing through combinatorial topology | 24h / 2.5 / English |
| Data Mining | 24h / 2.5 / English |
| Embedded Critical Real-Time Systems part 1 | 24h / 2.5 / English |
| Advanced Programming and Project Management (Java-based) | 24h / 2.5 / English |
| Introduction to technologies of distributed software development | 24h / 2.5 / English |
| Distributed algorithms (Part A) | 24h / 2.5 / English |
| Distributed algorithms (Part B) | 24h / 2.5 / English |
| Couse Title | Hours / ECTS / Language |
| Operating systems | 45h / 5 / English |
| Programming with GPU for Deep Learning | 24h / 2.5 / English |
| High performance runtimes | 45h / 5 / English |
| Compilation | 45h / 5 / English |
| Systems for big data | 45h / 5 / English |
| Safe System Programming in Rust | 45h / 5 / English |
| Software System Modelling and Design | 24h / 2.5 / English |
| Introduction to formal verification of Distributed Software and Systems | 24h / 2.5 / English |
| Technologies of large-scale parallel computing | 24h / 2.5 / English |
| Blockchain: algorithmic basics | 24h / 2.5 / English |
Admission requirements
Academic prerequisites
Bachelor of Science in Computer Science or Electrical Engineering
Language prerequisites
English (B2)
How to apply
Applications can be submitted exclusively online. You will need to provide the following documents:
- Transcript
- Two academic references (added online directly by your referees)
- CV/resume
- Statement of purpose highlighting your research interests and motivation for research
Fees and scholarships
Registration fees are available here
Find out more about scholarships
Please note that fees and scholarships may change for the following year.
Applications and admission dates
The Parallel and Distributed Systems (PDS) major is a research-oriented major of the FODQ track of the Master in Computer Science at IP Paris. It aims to train the next generation of researchers and top-level engineers who will lead innovation in the field of parallel and distributed systems.
Parallel and distributed systems are ubiquitous in many applications of our daily life (AI applications, online games, social networks, web services, healthcare simulations…). These systems distribute computation across many computing units because they must sustain massive workloads that cannot fit on a single computer.
Designing efficient, correct, and easy-to-maintain parallel and distributed systems is challenging. This challenge is inherent to the complexity of managing multiple machines, numerous users, and very large data sets. In the PDS major, students learn how to address these challenges and their related research questions. Students in the major learn both the theory and practice that underpin such systems, with courses ranging from operating systems, compilation, and large-scale distributed middleware to the algorithmic and mathematical foundations of distributed and parallel systems.
Objectives
- Train the next generation of researchers and engineers to lead innovation in parallel and distributed systems.
- Master the theoretical and practical skills to design efficient, correct, and maintainable parallel and distributed systems at the highest level.
- Develop research-oriented expertise through specialized projects and seminars, preparing students for a career in computer science research
Students that successfully complete the 2-year program will be able to:
- pursue a Ph.D. degree in areas related to Computer Science and distributed system (including Cloud computing, High Performance Computing, ...).
- work in R&D departments of companies and contribute to develop innovative solutions.
| Course Title | Hours / ECTS / Language |
| M1 Research Projects | 0h / 30 / English |
| M2 Research Projects | 0h / 12.5 / English |
| M2 master thesis | 0h / 30 / English |
| M1 PDS Seminar | 24h / 2.5 / English |
| M2 PDS Seminar | 24h / 2.5 / English |
| High performance runtimes | 45h / 5 / English |
| Middleware and software architecture for distributed applications | 45h / 5 / English |
| Data analytic infrastructures | 45h / 5 / English |
| Cloud infrastructures | 45h / 5 / English |
| Advanced programming of multi-core architectures | 45h / 5 / English |
| From the Internet to the IoT | 45h / 5 / English |
| An Introduction to Computer Architecture and Operating Systems | 45h / 5 / English |
| Distributed Data Structures, with a Spotlight on Blockchains | 45h / 5 / English |
| Safe Intelligent Systems | 45h / 5 / English |
| Distributed computing through combinatorial topology | 24h / 2.5 / English |
| Data Mining | 24h / 2.5 / English |
| Embedded Critical Real-Time Systems part 1 | 24h / 2.5 / English |
| Advanced Programming and Project Management (Java-based) | 24h / 2.5 / English |
| Introduction to technologies of distributed software development | 24h / 2.5 / English |
| Distributed algorithms (Part A) | 24h / 2.5 / English |
| Distributed algorithms (Part B) | 24h / 2.5 / English |
| Couse Title | Hours / ECTS / Language |
| Operating systems | 45h / 5 / English |
| Programming with GPU for Deep Learning | 24h / 2.5 / English |
| High performance runtimes | 45h / 5 / English |
| Compilation | 45h / 5 / English |
| Systems for big data | 45h / 5 / English |
| Safe System Programming in Rust | 45h / 5 / English |
| Software System Modelling and Design | 24h / 2.5 / English |
| Introduction to formal verification of Distributed Software and Systems | 24h / 2.5 / English |
| Technologies of large-scale parallel computing | 24h / 2.5 / English |
| Blockchain: algorithmic basics | 24h / 2.5 / English |
Admission requirements
Academic prerequisites
Bachelor of Science in Computer Science or Electrical Engineering
Language prerequisites
English (B2)
How to apply
Applications can be submitted exclusively online. You will need to provide the following documents:
- Transcript
- Two academic references (added online directly by your referees)
- CV/resume
- Statement of purpose highlighting your research interests and motivation for research
Fees and scholarships
Registration fees are available here
Find out more about scholarships
Please note that fees and scholarships may change for the following year.