Ce Zhang: Katalogdaten im Frühjahrssemester 2022 |
Name | Herr Dr. Ce Zhang |
URL | https://zhangce.github.io/ |
Departement | Informatik |
Beziehung | Ausserordentlicher Professor |
Nummer | Titel | ECTS | Umfang | Dozierende | |
---|---|---|---|---|---|
252-0063-00L | Data Modelling and Databases ![]() | 7 KP | 4V + 2U | C. Zhang | |
Kurzbeschreibung | Data modelling (Entity Relationship), relational data model, relational design theory (normal forms), SQL, database integrity, transactions and advanced database engines | ||||
Lernziel | Introduction to relational databases and data management. Basics of SQL programming and transaction management. | ||||
Inhalt | The course covers the basic aspects of the design and implementation of databases and information systems. The courses focuses on relational databases as a starting point but will also cover data management issues beyond databases such as: transactional consistency, replication, data warehousing, other data models, as well as SQL. | ||||
Literatur | Kemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 7. Auflage, 2009. Garcia-Molina, Ullman, Widom: Database Systems: The Complete Book. Pearson, 2. Auflage, 2008. | ||||
252-0817-00L | Distributed Systems Laboratory ![]() | 10 KP | 9P | G. Alonso, T. Hoefler, A. Klimovic, R. Wattenhofer, C. Zhang | |
Kurzbeschreibung | Entwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme. Das Projekt kann aus unterschiedlichen Teilbereichen (von Web-Services bis hin zu ubiquitären Systemen) stammen; typische Technologien umfassen drahtlose Ad-hoc-Netze oder Anwendungen auf Mobiltelefonen. | ||||
Lernziel | Erwerb praktischer Kenntnisse bei Entwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme. | ||||
Inhalt | Entwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme. Das Projekt kann aus unterschiedlichen Teilbereichen (von Web-Services bis hin zu ubiquitären Systemen) stammen; typische Technologien umfassen drahtlose Ad-hoc-Netze oder Anwendungen auf Mobiltelefonen. Zu diesem Praktikum existiert keine Vorlesung. Bei Interesse bitte einen der beteiligten Professoren oder einen Assistenten der Forschungsgruppen kontaktieren. | ||||
263-0007-00L | Advanced Systems Lab ![]() ![]() Only for master students, otherwise a special permission by the study administration of D-INFK is required. | 8 KP | 3V + 2U + 2A | M. Püschel, C. Zhang | |
Kurzbeschreibung | This course introduces the student to the foundations and state-of-the-art techniques in developing high performance software for mathematical functionality occurring in various fields in computer science. The focus is on optimizing for a single core and includes optimizing for the memory hierarchy, for special instruction sets, and the possible use of automatic performance tuning. | ||||
Lernziel | Software performance (i.e., runtime) arises through the complex interaction of algorithm, its implementation, the compiler used, and the microarchitecture the program is run on. The first goal of the course is to provide the student with an understanding of this "vertical" interaction, and hence software performance, for mathematical functionality. The second goal is to teach a systematic strategy how to use this knowledge to write fast software for numerical problems. This strategy will be trained in several homeworks and a semester-long group project. | ||||
Inhalt | The fast evolution and increasing complexity of computing platforms pose a major challenge for developers of high performance software for engineering, science, and consumer applications: it becomes increasingly harder to harness the available computing power. Straightforward implementations may lose as much as one or two orders of magnitude in performance. On the other hand, creating optimal implementations requires the developer to have an understanding of algorithms, capabilities and limitations of compilers, and the target platform's architecture and microarchitecture. This interdisciplinary course introduces the student to the foundations and state-of-the-art techniques in high performance mathematical software development using important functionality such as matrix operations, transforms, filters, and others as examples. The course will explain how to optimize for the memory hierarchy, take advantage of special instruction sets, and other details of current processors that require optimization. The concept of automatic performance tuning is introduced. The focus is on optimization for a single core; thus, the course complements others on parallel and distributed computing. Finally a general strategy for performance analysis and optimization is introduced that the students will apply in group projects that accompany the course. | ||||
Voraussetzungen / Besonderes | Solid knowledge of the C programming language and matrix algebra. | ||||
263-3300-00L | Data Science Lab ![]() Only for Data Science MSc. | 14 KP | 9P | C. Zhang, V. Boeva, R. Cotterell, J. Vogt, F. Yang | |
Kurzbeschreibung | In this class, we bring together data science applications provided by ETH researchers outside computer science and teams of computer science master's students. Two to three students will form a team working on data science/machine learning-related research topics provided by scientists in a diverse range of domains such as astronomy, biology, social sciences etc. | ||||
Lernziel | The goal of this class if for students to gain experience of dealing with data science and machine learning applications "in the wild". Students are expected to go through the full process starting from data cleaning, modeling, execution, debugging, error analysis, and quality/performance refinement. | ||||
Voraussetzungen / Besonderes | Prerequisites: At least 8 KP must have been obtained under Data Analysis and at least 8 KP must have been obtained under Data Management and Processing. |