Skip to content
View xavierhillroy's full-sized avatar

Block or report xavierhillroy

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
xavierhillroy/README.md

Xavier Hill Roy

GPU Computing & Systems Engineer

Master's Student at McMaster University, specializing in GPU Acceleration, Evolutionary Computing and Parallel Systems.

I enjoy architecting systems to run fast and optimizing existing systems. My research focuses on porting irregular evolutionary algorithms to NVIDIA A100s, optimizing memory hierarchy to minimize warp divergence, and scaling workloads across HPC clusters.

Tech Stack

  • Languages: C++, CUDA C++, Python, RISC-V Assembly
  • HPC & Systems: CUDA, OpenACC, OpenMP, MPI, Slurm, SIMD/Vectorization
  • Tools: Nsight Compute, CMake, gRPC, Protocol Buffers, Linux/Unix
  • Hardware: NVIDIA A100/H100, AMD EPYC, Raspberry Pi

Current Research: Accelerating Evolution

High-Throughput Linear Genetic Programming (LGP) on GPUs I am currently architecting a CUDA-based LGP engine to solve visual symbolic regression tasks.

  • Challenge: Genetic Programming is notorious for branch divergence and irregular memory access.
  • Solution: Designing custom memory arenas and flat-array program representations to maximize SIMT efficiency on NVIDIA H100s.

Featured Engineering Projects

A collection of performance studies benchmarking serial vs. parallel implementations on data-center hardware.

  • Core Tech: CUDA C++, OpenACC, NVIDIA A100
  • Result: Achieved 63.36x speedup on Prime Number Generation by optimizing nested loop structures with collapse(2) and parallel reductions.
  • Hardware: Ported from AMD EPYC 7413 (CPU) to NVIDIA A100-SXM4 (GPU).

A GPU microbenchmark studying routing and dispatch overhead in Mixture-of-Experts inference.

  • Core Tech: PyTorch, CUDA, Nsight Systems, NVTX
  • Result: Benchmarked naive, grouped, and cached-grouped MoE dispatch under uniform and skewed routing patterns; grouping tokens by expert consistently reduced latency versus naive dispatch.
  • Profiling: Used Nsight Systems to show that cached grouping removed online routing-plan construction overhead while expert FFN execution remained the dominant cost.

A distributed evolutionary computing system for Visual Reinforcement Learning.

  • Core Tech: Python, HPC Clusters (Digital Research Alliance)
  • Result: Scaled population evaluation across 64 CPU cores, reducing training time by an order of magnitude.
  • Architecture: Implemented thread-pool execution to handle variable-length genetic programs without stalling the pipeline.

Algorithmic optimization of the JPEG XL lossless compression standard.

  • Core Tech: Genetic Algorithms, C++
  • Result: Engineered an 8-predictor ensemble (WOP8) that improved compression ratios by 2.98% on medical and document datasets.
  • Publication: Published in Electronics (2025).

Connect With Me

I am always open to discussing GPU architecture, kernel optimization, and systems programming.

Pinned Loading

  1. libjxl-wop8 libjxl-wop8 Public

    Forked from libjxl/libjxl

    JPEG XL lossless compression Optimization research focusing on enhancing weighted average prediction functions using genetic algorithms and increased sub-predictor set

    C++

  2. moe-routing-microbench moe-routing-microbench Public

    A PyTorch microbenchmark isolating memory bandwidth and dispatch overhead in irregular Mixture-of-Experts (MoE) token routing.

    Python

  3. gpu-optimization-benchmarks gpu-optimization-benchmarks Public

    Collection of GPU-accelerated algorithms and performance benchmarks using CUDA, OpenACC, and MPI on NVIDIA A100s.

    Cuda

  4. Terminal-Typer Terminal-Typer Public

    A terminal-based typing game with real-time chat and leaderboards. Test your typing speed, compete globally, and chat with other players - all in a clean, colorful terminal UI. Built with Python, g…

    Python