This repository represents the Java interface to the native libraries that the application Common Source Identification Cashmere needs. More specifically, the application uses libjpeg-turbo to decode JPEG images and the FFT library clFFT to perform Fourier transforms.
This version is for both OpenCL and Cuda.
This repository uses git submodules to check out an unreleased version of clFFT that supports radix 17 and 19 kernels. We can clone the repository and its submodule with the following commands:
git clone https://github.com/JungleComputing/common-source-identification-cashmere-native
cd common-source-identification-cashmere-native
git submodule init
git submodule update
Currently only Linux is supported. The build.gradle
file contains
subprojects for clFFT
, fft
, libjpeg-turbo
, and readjpg
. The clFFT source will be
obtained using the git submodules,
fft
contains the Java native code that calls this library,
the build script from libjpeg-turbo
will
download a release from GitHub, and readjpg
contains the Java native code that
calls this library. The root project contains Java code that interfaces
with the fft
and readjpg
libraries.
The project can be built with:
cd common-source-identification-cashmere-native
./gradlew build