Torsten Hoefler: Catalogue data in Spring Semester 2017 |
Name | Prof. Dr. Torsten Hoefler |
Field | Scalable Parallel Computing |
Address | Inst. f. Hochleistungsrechnersyst. ETH Zürich, OAT V 15 Andreasstrasse 5 8092 Zürich SWITZERLAND |
Telephone | +41 44 632 63 44 |
torsten.hoefler@inf.ethz.ch | |
URL | http://htor.inf.ethz.ch |
Department | Computer Science |
Relationship | Full Professor |
Number | Title | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|
252-0029-00L | Parallel Programming | 7 credits | 4V + 2U | T. Hoefler, M. Vechev | |
Abstract | Introduction to parallel programming: deterministic and non-deterministic programs, models for parallel computation, synchronization, communication, and fairness. | ||||
Objective | The student should learn how to write a correct parallel program, how to measure its efficiency, and how to reason about a parallel program. Student should become familiar with issues, problems, pitfalls, and solutions related to the construction of parallel programs. Labs provide an opportunity to gain experience with threads, libraries for thread management in modern programming lanugages (e.g., Java, C#) and with the execution of parallel programs on multi-processor/multi-core computers. | ||||
252-0062-00L | Operating Systems and Networks | 8 credits | 4V + 3U | T. Hoefler, A. Perrig | |
Abstract | This is an introductory course on computer networks and operating systems, with a particular focus on networking in the Internet and monolithic operating systems like Linux and Windows. Network and OS programming at different levels is an integral part of the course. | ||||
Objective | This course is intended as an introduction to both computer networking and operating systems for computer scientists. Students will get a comprehensive overview of the key protocols and the general architecture of the Internet, as one example of more general principles in network design, and acquire hands-on experience in programming different aspects of a computer network. In addition, the course provides a full introduction to modern operating system design, including memory management, scheduling, I/O, protection, and so on. The architecture of Unix-like operating systems (such as Linux) is used as an example of more general principles in OS design. | ||||
Lecture notes | The slides for each lecture will be made available in the web pages of the course, along with additional reference material. | ||||
Literature | The networking material will be based on the following text book: Computer Networks (5th Edition) Andrew S. Tanenbaum, David J. Wetherall Prentice Hall; 5 edition (October 7, 2010) In addition, the following textbook provides useful background for the operating systems material in the course: Modern Operating Systems (3rd Edition) Andrew S. Tanenbaum Prentice-Hall, 2007 | ||||
263-3840-00L | Hardware Architectures for Machine Learning | 2 credits | 2S | G. Alonso, T. Hoefler, O. Mutlu, C. Zhang | |
Abstract | The seminar covers recent results in the increasingly important field of hardware acceleration for data science and machine learning, both in dedicated machines or in data centers. | ||||
Objective | The seminar aims at students interested in the system aspects of machine learning, who are willing to bridge the gap across traditional disciplines: machine learning, databases, systems, and computer architecture. | ||||
Content | The seminar is intended to cover recent results in the increasingly important field of hardware acceleration for data science and machine learning, both in dedicated machines or in data centers. | ||||
Prerequisites / Notice | The seminar should be of special interest to students intending to complete a master's thesis or a doctoral dissertation in related topics. |