ChE-310: Fundamentals of separation processesThe course will cover fundamentals concepts of separation processes involving chemical equilibrium and mass transfer. Students will design separation processes widely used in the industry, for the separation of liquid mixtures, gas-liquid mixtures, and gas ...
CS-522: Principles of computer systemsThis advanced graduate course teaches the key design principles underlying successful computer and communication systems, and shows how to solve real problems with ideas, techniques, and algorithms from operating systems, networks, databases, programming l ...
CS-477: Advanced operating systemsThis course teaches advanced OS system design. Using an extensive hands-on approach, the course focuses on traditional and new concepts proposed in the past two decades in the area of operating systems. ...
HUM-226: Bien-être et limites planétairesCe cours approfondit les acquis d'ENV-101 pour mieux comprendre et mettre en œuvre la durabilité : comment transformer la société vers le bien-être pour tous dans les limites écologiques, avec des approches et solutions sectorielles (énergie, bâtiments, mo ...
ME-213: Programmation pour ingénieurMettre en pratique les bases de la programmation vues au semestre précédent. Développer un logiciel structuré. Méthode de debug d'un logiciel. Introduction à la programmation scientifique. Introduction à l'instrumentation virtuelle. ...
CS-453: Concurrent computingWith the advent of modern architectures, it becomes crucial to master the underlying algorithmics of concurrency. The objective of this course is to study the foundations of concurrent algorithms and in particular the techniques that enable the constructio ...
EE-490(g): Lab on app development for tablets and smartphonesFocusing on the Android ecosystem, this course teaches techniques for the development of distributed mobile applications, operating on multiple heterogeneous devices (tablets / smartwatches), sensing the environment, and interfacing with the cloud. ...
EE-390(a): Lab on hardware-software digital systems codesignThis course explores hardware-software co-design techniques to develop heterogeneous multi-core embedded systems running Linux on FPGAs. The course explores high-level synthesis tools (HLS) to design hardware accelerators that reduce total execution time a ...
CS-510: Topics in software securityMemory corruption and type safety flaws dominate the threat landscape. We will approach current research
from three dimensions: sanitization (finding flaws through runtime monitors); fuzzing (testing software
automatically); and mitigation (protecting soft ...
CS-626: Evolution of Storage SystemsThis discussion-based class will focus on how storage systems have evolved over time. We will cover topics such as persistent memory, CXL, and disaggregated storage systems. At the end of the class, students will be required to write a report on the chall ...
AR-301(d): Studio BA5 (Fröhlich M. & A.)"Tackle the type" deals with processes of development and redesign of architectural typologies, and addresses the theme critically under todayâs contemporary condition. Based on the analysis of a specific building typology, independent projects are to be ...
CS-449: Systems for data scienceThe course covers fundamental principles for understanding and building systems for managing and analyzing large amounts of data. ...
CS-422: Database systemsThis course is intended for students who want to understand modern large-scale data analysis systems and database systems. It covers a wide range of topics and technologies, and will prepare students to be able to build such systems as well as read and und ...