Projects

Recent research and engineering work

Selected systems-level projects spanning differentiable geometry, rendering, and scientific computing.

Voronoify

Python, CUDA C++, Rust (Oct 2025)

  • Engineered multiple high-performance implementations of a Voronoi image generator across CPU, multi-core CPU, and GPU to analyze performance trade-offs.
  • CUDA C++ Jump Flooding Algorithm (JFA) for label propagation + custom parallel reduction kernel for color averaging to remove host–device transfer bottlenecks.
  • Rust version with Rayon for safe parallelism on machines without a GPU.

Rendering Engine – Monte Carlo Path Tracer

Rust (Sept 2025 – Present)

  • Physically based Monte Carlo path tracer in Rust: from ray generation and geometric intersections to global illumination with MIS.
  • Implemented BSDFs with Fresnel effects, cosine-weighted sampling, analytical PDF evaluation.
  • Integrated direct + indirect lighting with emitter sampling, hierarchical light selection, and MIS variance reduction.

Numerical Simulation

C++ (Fall 2022)

  • Wrote a full C++ linear algebra library with templates, operator overloading, stack vs heap memory control, and unit tests.
  • Built a 2D mass–spring particle simulation engine: implicit Euler integration, stiffness/mass matrix assembly.
  • Implemented custom linear solvers (Gauss–Seidel, graph-colored Gauss–Seidel, Cholesky).