Reusable components for CUDA API development.
Clone or download
Latest commit f429236 Nov 21, 2018


Reusable components for CUDA API development.

Build status:

Code coverage:

This package provides some reusable functionality for programming against CUDA or NVIDIA APIs. It is meant to be used by package developers, and is not expected to export functionality useful for application programmers.



The file src/compatibility.jl contains hard-coded databases with software and hardware compatibility information that cannot be queried from APIs.


The file src/discovery.jl defines helper methods for discovering the NVIDIA driver and CUDA toolkit, as well as some more generic methods to find libraries and binaries relative to eg. the location of the driver or toolkit.


CUDA version update

When a new version of CUDA is released, CUDAapi.jl needs to be updated accordingly:

  • discovery.jl: update the cuda_versions dictionary
  • compatibility.jl: update each _db variable (refer to the comments for more info)
  • appveyor.yml: add the version to the CI roster
  • appveyor.ps1: provide a link to the installer, and list the components that need to be installed