GpFlash: Maximizing Speed and Minimizing Memory for Gaussian Process Training and Prediction
Abstract
This paper presents GpFlash, a Gaussian process library that is focused on fast training and posterior evaluations, minimal memory usage, and scalability to high-dimensional problems. GpFlash was compared to the popular GP libraries scikit-learn, GPy, GPflow, GPyTorch, and SMT on a MacBook Pro and the supercomputer Trillium. GpFlash was found to use less memory and to be faster for training and posterior evaluations relative to the other GP libraries for all cases considered. For example, when using nx = 104 training points in a 10-dimensional space GpFlash required 9.6 to 35 times less memory and was 2.6 to 54 times faster than the other GP libraries for the evaluation of the marginal log likelihood and its gradient. The memory reduction was achieved by only using one matrix of size nx × nx to store different symmetric matrices in its lower and upper triangular entries. The computational speedup was the result of designing algorithms to access memory efficiently, using BLAS and LAPACK methods extensively, and factoring kernel equations so that expensive exponential calculations could be reused. GpFlash was more than 440 times faster than all of the other GP libraries considered when evaluating the posterior mean together with its gradient for the case with 104 training points and 10 dimensions. GpFlash is available at https://github.com/marchildon/gpflash.
Related
- Training Parallel Speculative Draft Models by Directly Minimizing Expected Decoding Rounds
- Training More Robust Classification Model via Discriminative Loss and Gaussian Noise Injection
- Kriging and Gaussian processes: interconnected frameworks for spatial modelling and prediction
- Rate-Preserving Shrinking-Support Gaussian Process Prediction
- Hierarchical Exponential-Gaussian Mixtures for Watch-Time Distribution Prediction
BibTeX
@misc{marchildon2026gpflash,
title = {{GpFlash: Maximizing Speed and Minimizing Memory for Gaussian Process Training and Prediction}},
author = {Andre Marchildon},
howpublished = {arXiv},
year = {2026},
month = oct,
doi = {10.48550/arxiv.2610.16861},
eprint = {2610.16861},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2610.16861},
}
RIS
TY - UNPB
TI - GpFlash: Maximizing Speed and Minimizing Memory for Gaussian Process Training and Prediction
AU - Andre Marchildon
PY - 2026
DA - 2026/10/12
PB - arXiv
DO - 10.48550/arxiv.2610.16861
UR - https://arxiv.org/abs/2610.16861
AB - This paper presents GpFlash, a Gaussian process library that is focused on fast training and posterior evaluations, minimal memory usage, and scalability to high-dimensional problems. GpFlash was compared to the popular GP libraries scikit-learn, GPy, GPflow, GPyTorch, and SMT on a MacBook Pro and the supercomputer Trillium. GpFlash was found to use less memory and to be faster for training and posterior evaluations relative to the other GP libraries for all cases considered. For example, when using nx = 10^4 training points in a 10-dimensional space GpFlash required 9.6 to 35 times less memory and was 2.6 to 54 times faster than the other GP libraries for the evaluation of the marginal log likelihood and its gradient. The memory reduction was achieved by only using one matrix of size nx × nx to store different symmetric matrices in its lower and upper triangular entries. The computational speedup was the result of designing algorithms to access memory efficiently, using BLAS and LAPACK methods extensively, and factoring kernel equations so that expensive exponential calculations could be reused. GpFlash was more than 440 times faster than all of the other GP libraries considered when evaluating the posterior mean together with its gradient for the case with 10^4 training points and 10 dimensions. GpFlash is available at https://github.com/marchildon/gpflash.
ER -