Skip to content
View karl-kes's full-sized avatar

Block or report karl-kes

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
karl-kes/README.md

Karl Keshavarzi

Computer Engineering, University of Waterloo

I write low-level systems and HPC software: CUDA kernels, parallel solvers, and code that lives close to the hardware. My research experience centers on distributed GPU algorithms for maximally independent sets. I've recently begun work on ML compilers with the UWHPC design team.

Projects

∂T/∂t = α∇²T

3D Heat Solver
A C++ solver for the 3D heat equation using an explicit forward Euler finite-difference scheme, with dual-backend CPU (OpenMP/SIMD) and GPU (CUDA) execution from unified source. Achieves 60-68x GPU speedup at large grid sizes, validated against Neumann eigenfunction solutions.

∇ × E = −∂B/∂t

Finite-Difference Maxwell Solver
A 3D Finite-Difference Time-Domain (FDTD) Maxwell Solver with CPML boundary conditions. Capable of simulating and visualizing electromagnetic vector fields. Parallelized with OpenMP (CUDA in progress).

F = Gm₁m₂/r²

N-Body Gravity Engine
N-Body physics engine simulationg gravity with symplectic Yoshida integration. Validated solar system dynamics with NASA JPL Horizons data across 249 years.

u(r) = ar / (1 + br)

Variational Monte Carlo Engine
A Variational Monte Carlo engine simulating the homogeneous electron gas, built as part of UW High Performance Computing. Uses a trial wavefunction and stochastic optimization to estimate ground-state energies.

Skills

Languages: CUDA, C++, Python, C

Areas: High-Performance Computing, Optimizations, Software Engineering, Numerical Methods/Computational Physics

Tools: Git, Bash, Linux, OpenMP, NumPy, Rerun, Plotly, MatPlotLib

Experience

Software Engineering Intern — Shopify
Summer 2026

Founder & HPC Engineer — UW HPC
Developing software for high-performance computing

Co-Author — UWaterloo ECE 105 Course Text
Curriculum development and LaTeX infrastructure for 400+ annual students

Founder — KesTech Systems
$40K+ revenue, 60+ custom-built systems

Contact

karl.keshavarzi@uwaterloo.ca

Pinned Loading

  1. 3d-heat-solver 3d-heat-solver Public

    CUDA C++ solver for the heat equation in 3D.

    Cuda

  2. N-Body-Physics-Engine N-Body-Physics-Engine Public

    An N-Body Gravitational Simulator developed in C++ and 3D rendered in Python.

    C++ 2

  3. Finite-Difference-Maxwell-Solver Finite-Difference-Maxwell-Solver Public

    Finite-Difference Time-Domain (FDTD) solver for Maxwell's equations in 3D. Implemented in C++ with parallelization and interactive visualization.

    C++ 1

  4. UWHPC/Variational-Monte-Carlo UWHPC/Variational-Monte-Carlo Public

    Variational Monte Carlo engine in C++ for simulating the homogeneous electron gas.

    C++ 3