I am teaching (or
have taught) many classes at NYU, CUNY, and GWU. For a complete list, feel free to check my CV .
main teaching philosophy is to link both teaching and research.
Teaching a subject, especially graduate classes, can generate
interesting research ideas. Research work can feed classes with
material. It is also important to show students how they can use
the material they learned throughout the course outside the narrow
window of the semester. How is it related to other courses? How is it
related to their research or industrial work? I have to admit that,
beside research, I really enjoy teaching!
Here is a partial list of what I have taugh in the last few years.
- Multicore Processors: Architecture & Programming (Fall 12, Fall 2013, Fall 2014, Spring 2016, Spring 2017, Spring 2018, Spring 2019, Spring 2020, Spring 2021)
- GPUs: Architecture and Programming (Spring 12, Fall 2013, Fall 2014, Fall 2015, Fall 2016, Fall 2017, Fall 2018, Fall 2019, Fall 2020)
- Parallel Computing (Spring 2014, Spring 2015, Spring 2017, Spring 2018, Spring 2019, Fall 2020, Spring 2021)
- Virtual Machines: Concepts & Applications (Spring 2014, Spring 2017)
- Computer Systems Organization (Spring 13, Fall 2013, Fall 2014, Spring 2015, Fall 2015, Fall 2016, Fall 2017, Fall 2018, Spring 2019 )
- Operating Systems (Fall 11, Spring 13)
- Compilers Construction (Spring 10, Fall 10, Spring 11, Spring 12, Fall 12)