Courses taught
Project-based teaching
In 2025 and 2026, I supervised a Technion project course titled
Cross-Platform GPU Kernel Translation with LLMs.
The project focused on using large language models to translate
CUDA GPU kernels to alternative platforms, including OpenCL,
SYCL/DPC++, ROCm/HIP, OpenMP offload, and OpenACC, with
attention to optimization and benchmarking across heterogeneous
GPU ecosystems.
Developed course
A major teaching thread is a course I developed around
shared-memory parallelism across CPUs, GPUs, and the space in
between. It is built to make students comfortable moving from
classical multi-core programming to accelerator-facing systems
work and performance-aware implementation.
The course page at Technion presents it as a developed course,
with lecture materials, exercises, project resources, and
infrastructure links.
Teaching throughline
The same background that feeds my research agenda also shapes
my teaching: parallel programming, memory hierarchy,
performance reasoning, and systems-level thinking. My goal is
not only to cover APIs or tools, but to teach how modern
computational systems behave and how to work with them well.