Graham Markall

Principal Software Engineer at NVIDIA

Lincoln, England, United Kingdom
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
Graham Markall is a Principal Software Engineer with 15 years of experience building high-performance compilers, numerical methods, and GPU-accelerated tooling, currently at NVIDIA working on the RAPIDS ecosystem. He excels at backend performance engineering—optimising CUDA kernels, implementing on-disk and raw-kernel caching, and tightening memory management—which has delivered measurable speedups in projects like cuSignal and RMM. His open-source contributions to Numba, llvmlite, pycuda and cuDF show deep expertise in Python JIT compilation, LLVM integration and cross-platform build reliability. He pairs academic rigour (PhD from Imperial College) with practical systems work, having created a CUDA simulator for Numba and led toolchain ports at Embecosm. Equally comfortable in low-level C/C++ and high-level Python, he often bridges gaps between language runtimes and GPU hardware to make numerical code both faster and more debuggable. Based in Lincoln, he brings a habit of turning tricky pre-silicon and device-level problems into robust, well-tested developer-facing features.
code15 years of coding experience
job9 years of employment as a software developer
bookPhD. Computing, PhD. Computing at Imperial College London
bookBSc. (Hons) Computer Science, BSc. (Hons) Computer Science at The Manchester Metropolitan University
stackoverflow-logo

Stackoverflow

Stats
104reputation
3kreached
5answers
0questions
github-logo-circle

Github Skills (39)

c-language10
memory-allocation10
gpgpu10
python10
pycuda10
signal-processing10
llvm10
memory-management10
gpu-programming10
cudf10
conda10
cicd10
rapids10
gpu10
performance-optimization10

Programming languages (18)

C++CSSCScalaMakefileTeXHTMLJupyter Notebook

Github contributions (5)

github-logo-circle
numba/llvmlite

Mar 2015 - Jan 2023

A lightweight LLVM python binding for writing JIT compilers
Role in this project:
userBack-end Developer & DevOps Engineer
Contributions:251 reviews, 31 commits, 47 PRs in 7 years 11 months
Contributions summary:Graham contributed to the llvmlite project by addressing build issues on Windows, specifically related to Python 3.3 and PyPy environments. They added dependencies for PyPy on Linux and integrated PyPy master testing within the Travis CI pipeline. Furthermore, the user's work included updates to build scripts, changes in the setup for the conda environment, and adjustments to the installation documentation, reflecting a focus on improving build processes and cross-platform compatibility.
llvmcompilerspythonjitcompiler
numba/numba

Oct 2014 - Jan 2023

NumPy aware dynamic Python compiler using LLVM
Role in this project:
userBackend Developer
Contributions:1291 reviews, 1345 commits, 430 PRs in 8 years 4 months
Contributions summary:Graham made contributions to the Numba compiler, focusing on CUDA-related features and bug fixes. Their work involved implementing new functionality for the CUDA target, including support for on-disk caching, improvements to the handling of device functions, and adding tests for these features. They also refactored existing code and addressed various issues related to device code generation and memory management within the CUDA compilation process.
cudapythonparallelnumpynumba
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Graham Markall - Principal Software Engineer at NVIDIA