MARTIN BURTSCHER
Teaching
Fall 2024
|
|
|
|
|
CS 4380 - Parallel Programming
TR 3:30 PM - 4:50 PM in Derrick Hall 329 [Canvas]
CS 5351 - Parallel Processing
TR 3:30 PM - 4:50 PM in Derrick Hall 329 [Canvas]
Courses Taught
Advanced Parallel Computing (2018, 2020, 2021, 2023)
This PhD course covers advanced design of regular and irregular parallel algorithms, hardware support for parallelism, programming models for CPU- and accelerator-based systems, and language support for parallel programming.
Topics in Computer Systems (2000, 2002)
In this graduate seminar, the students read and discuss influential papers on a computer systems related topic, which changes every semester.
Parallel Processing (2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022)
This graduate course introduces parallel processing techniques for multicore CPUs, GPUs, and clusters. It covers OpenMP, Pthreads, MPI, and CUDA and includes writing, running, and analyzing parallel programs in all of these languages on a supercomputer.
Computer Organization and Design (2012)
This graduate course studies the dynamic interaction of computer system building blocks and their management. The projects ask the students to evaluate different system components and analyze their performance.
High-Performance Microprocessor Architecture (2001, 2002, 2003, 2004, 2005, 2006, 2007)
This graduate course covers the advanced architectural features of high-end microprocessors. The projects ask the students to simulate numerous configurations of different CPU components on real applications to analyze the tradeoffs between performance, size, and complexity.
Parallel Programming (2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022)
This senior course introduces parallel programming techniques for multicore CPUs, GPUs, and clusters. It covers OpenMP, Pthreads, MPI, and CUDA and includes writing and running parallel programs in all of these languages on a supercomputer.
Optimizing Compilers (2003, 2004, 2005, 2006)
This senior course teaches compiler optimizations and covers executable file formats and system calls. Over the course of the semester, the students write an SSA-based optimizing compiler backend.
Programming for Performance (2009; together with Prof. Keshav Pingali)
This senior course covers performance-critical features of modern computer architectures and discusses how programs can exploit them. Topics include cache-aware, multi-core, GPU, and distributed-memory programming.
Computer Architecture (2001, 2002, 2011, 2012, 2013, 2014, 2015)
This junior/senior course teaches modern computer architecture. It includes large projects in which the students design a pipelined CPU that can execute actual MIPS programs.
Data Structures and Algorithms (1999, 2011, 2013)
This sophomore/junior course introduces the students to C++, static and dynamic data structures, and algorithms.
Foundations of Computer Science (2010)
This freshman course introduces C/C++ programming. Problem solving, algorithm development, structured programming, good coding style, and control structures are emphasized.
Engineering Seminar (2003)
This seminar familiarizes freshmen with the university and the college of engineering. It presents an overview of the various engineering programs and courses and discusses ethics.
Teaching Awards
Excellence in Teaching Award
College of Science and Engineering, Texas State University, 2019
Alpha Chi Favorite Professors for 2016
Texas State University, 2016
Alpha Chi Favorite Professors for 2015
Texas State University, 2015
Alpha Chi Favorite Professors for Spring 2014
Texas State University, 2014
Excellence in Teaching Award
College of Science and Engineering, Texas State University, 2012
Michael Tien '72 Excellence in Teaching Award
College of Engineering, Cornell University, 2003
Third Annual Teaching Effectiveness Award (honorable mention)
College of Engineering and Applied Science, University of Colorado at Boulder, 1998
|
|