Teaching

Courses Taught

Parallel Programming and Algorithms (CS 5802)

Programming using C++ and Java threads, Message Passing Interface, MapReduce/Spark, GPU/CUDA.

Analyzing parallel algorithms and performance analysis.

  • Semester taught: Fall 2024

Topics in Parallel and Distributed Computing (CS 6801)

Advanced Parallel and Distributed Computing class with research paper discussion and presentation

  • Semester taught: Spring 2024

Office Hours

I hold office hours on Thursdays from 2 pm to 3 pm. No appointments needed.

My YouTube Educational CS videos

My CS and Parallel Computing YouTube Videos

Understanding cache performance

Analysis of cache misses of different matrix multiplication algorithms

Furthest-in-Future Cache Eviction (greedy algorithm)

On Building HashTree or Merkle Tree using cryptographic hashing in Java

Bloom filter data structure (Deriving false positive rate)

Parallel Reduction Time Complexity

Intel Intrinsic functions for SIMD Parallelism (Vectorization)

Creating an Array of Threads in Java