jcuda-main
Project structure
JCuda offers Java bindings for CUDA and CUDA-related
libraries. The bindings for the individual libraries are contained in the
following sub-projects:
- JCuda -- The main JCuda library, offering
access to the CUDA runtime- and driver API. This library (the JAR file) is
required for compiling and using all other libraries.
- JCublas -- Java bindings for CUBLAS
- JCufft -- Java bindings for CUFFT
- JCurand -- Java bindings for CURAND
- JCusparse -- Java bindings for CUSPARSE
- JCusolver -- Java bindings for CUSOLVER
JNvgraph -- Java bindings for nvGRAPH Deprecated as of CUDA 11
- JCudnn -- Java bindings for cuDNN
Each of these projects contains the source code for the native libraries
(DLL, SO, or DYLIB) and for the Java libraries (JAR).
Using JCuda
JCuda can be used with Maven, Gradle or by downloading the pre-built libraries.
Details are explained here: Using JCuda
Building JCuda
Information about how to build the JCuda libraries from the source code is
given here: Building JCuda