Teaching

CSE 451: Introduction to Operating Systems (Spring 2026)

CSE 451 introduces the design and implementation of operating systems. The course covers the abstractions that operating systems provide for hardware, applications, and users, including processes, threads, concurrency, memory management, storage, file systems, protection, and resource management.

The course emphasizes learning systems ideas by building them. Students work on substantial programming projects that expose the tradeoffs behind efficient, secure, and reliable operating-system design.

Course materials were based on the CSE 451 course webpage.

CSE 554: Machine Learning Systems (Winter 2026)

CSE 554 studies the systems foundations of modern machine learning infrastructure, with emphasis on large language model training and inference. The course covers GPU architecture and CUDA programming, GPU kernel optimization, transformer implementation, performance modeling, quantization, memory management, sparsity, mixture-of-experts models, speculative decoding, batching, parallelism, reinforcement learning for LLMs, and agentic systems.