Kernel Operations on GPU, without memory overflows Kernel Operations on the GPU, with Autodiff, without Memory Overflows - Archive ouverte HAL Accéder directement au contenu
Pré-Publication, Document De Travail Année : 2020

Kernel Operations on GPU, without memory overflows Kernel Operations on the GPU, with Autodiff, without Memory Overflows

Résumé

The KeOps library provides a fast and memory-efficient GPU support for tensors whose entries are given by a mathematical formula, such as kernel and distance matrices. KeOps alleviates the major bottleneck of tensor-centric libraries for kernel and geometric applications: memory consumption. It also supports automatic differentiation and outperforms standard GPU baselines, including PyTorch CUDA tensors or the Halide and TVM libraries. KeOps combines optimized C++/CUDA schemes with binders for high-level languages: Python (Numpy and PyTorch), Matlab and GNU R. As a result, high-level "quadratic" codes can now scale up to large data sets with millions of samples processed in seconds. KeOps brings graphics-like performances for kernel methods and is freely available on standard repositories (PyPi, CRAN). To showcase its versatility, we provide tutorials in a wide range of settings online at www.kernel-operations.io.
Fichier principal
Vignette du fichier
main.pdf (199.46 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-02517462 , version 1 (24-03-2020)
hal-02517462 , version 2 (08-04-2021)

Identifiants

  • HAL Id : hal-02517462 , version 1

Citer

Benjamin Charlier, Jean Feydy, Joan Glaunès, François-David Collin, Ghislain Durif. Kernel Operations on GPU, without memory overflows Kernel Operations on the GPU, with Autodiff, without Memory Overflows. 2020. ⟨hal-02517462v1⟩
251 Consultations
374 Téléchargements

Partager

Gmail Facebook X LinkedIn More