CUDA_jll.jl

Author JuliaBinaryWrappers
Popularity
0 Stars
Updated Last
7 Months Ago
Started In
October 2019

CUDA_jll.jl

This is an autogenerated package constructed using BinaryBuilder.jl.

Products

The code bindings within this package are autogenerated from the following Products defined within the build_tarballs.jl file that generated this package:

products = [
    LibraryProduct(["libnppitc", "nppitc64_92"], :libnppitc),
    LibraryProduct(["libnppisu", "nppisu64_92"], :libnppisu),
    LibraryProduct(["libnppidei", "nppidei64_92"], :libnppidei),
    LibraryProduct(["libnvblas", "nvblas64_92"], :libnvblas),
    LibraryProduct(["libnppist", "nppist64_92"], :libnppist),
    FileProduct(["share/libdevice/libdevice.10.bc"], :libdevice),
    LibraryProduct(["libnvToolsExt", "nvToolsExt64_1"], :libnvtoolsext),
    LibraryProduct(["libnvgraph", "nvgraph64_92"], :libcurand),
    LibraryProduct(["libcurand", "curand64_92"], :libcurand),
    LibraryProduct(["libnpps", "npps64_92"], :libnpps),
    LibraryProduct(["libnppicom", "nppicom64_92"], :libnppicom),
    LibraryProduct(["libcusparse", "cusparse64_92"], :libcusparse),
    LibraryProduct(["libnppicc", "nppicc64_92"], :libnppicc),
    LibraryProduct(["libcusolver", "cusolver64_92"], :libcusolver),
    FileProduct(["lib/libcudadevrt.a", "lib/cudadevrt.lib"], :libcudadevrt),
    LibraryProduct(["libnppif", "nppif64_92"], :libnppif),
    LibraryProduct(["libnppim", "nppim64_92"], :libnppim),
    LibraryProduct(["libcudart", "cudart64_92"], :libcudart),
    LibraryProduct(["libnppc", "nppc64_92"], :libnppc),
    LibraryProduct(["libcufftw", "cufftw64_92"], :libcufftw),
    LibraryProduct(["libcufft", "cufft64_92"], :libcufft),
    LibraryProduct(["libnppial", "nppial64_92"], :libnppial),
    LibraryProduct(["libnppig", "nppig64_92"], :libnppig),
    ExecutableProduct(["nvdisasm"], :nvdisasm),
    LibraryProduct(["libcupti", "cupti64_92"], :libcupti),
    LibraryProduct(["libnvvm", "nvvm64_32_0"], :libnvvm),
    LibraryProduct(["libcublas", "cublas64_92"], :libcublas)
]

Usage example

For example purposes, we will assume that the following products were defined in the imaginary package Example_jll:

products = [
    FileProduct("src/data.txt", :data_txt),
    LibraryProduct("libdataproc", :libdataproc),
    ExecutableProduct("mungify", :mungify_exe)
]

With such products defined, Example_jll would contain data_txt, libdataproc and mungify_exe symbols exported. For FileProduct variables, the exported value is a string pointing to the location of the file on-disk. For LibraryProduct variables, it is a string corresponding to the SONAME of the desired library (it will have already been dlopen()'ed, so typical ccall() usage applies), and for ExecutableProduct variables, the exported value is a function that can be called to set appropriate environment variables. Example:

using Example_jll

# For file products, you can access its file location directly:
data_lines = open(data_txt, "r") do io
    readlines(io)
end

# For library products, you can use the exported variable name in `ccall()` invocations directly
num_chars = ccall((:count_characters, libdataproc), Cint, (Cstring, Cint), data_lines[1], length(data_lines[1]))

# For executable products, you can use the exported variable name as a function that you can call
mungify_exe() do mungify_exe_path
    run(`$mungify_exe_path $num_chars`)
end