diff --git a/CHANGELOG.md b/CHANGELOG.md index cf71ea28501..ec0f960170b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -202,6 +202,7 @@ - PR #5251 Fix more mispellings in cpp comments and strings - PR #5254 Deprecate nvstrings, nvcategory and nvtext - PR #5270 Add support to check for "NaT" and "None" strings while typecasting to `datetime64` +- PR #5298 Remove unused native deps from java library - PR #5216 Make documentation uniform for params ## Bug Fixes diff --git a/java/README.md b/java/README.md index 172fb1a5faa..c4bdfafad60 100644 --- a/java/README.md +++ b/java/README.md @@ -53,13 +53,15 @@ CUDA 10.0: Build the native code first, and make sure the a JDK is installed and available. If you use the default cmake options libcudart will be dynamically linked to libcudf and librmm which are included. If you do this the resulting jar will have a classifier associated with it -because that jar can only be used with a single version of the CUDA runtime. If you want -to remove that requirement you can build RMM and cuDF with `-DCUDA_STATIC_RUNTIME=ON` when -running cmake, and similarly -DCUDA_STATIC_RUNTIME=ON when running maven. This will statically -link in the CUDA runtime and result in a jar with no -classifier that should run on any host that has a version of the driver new enough to support -the runtime that this was built with. Official releases will indicate in the release notes -the minimum driver version required. +because that jar can only be used with a single version of the CUDA runtime. + + +There is experimental work to try and remove that requirement but it is not fully functional +you can build RMM and cuDF with `-DCUDA_STATIC_RUNTIME=ON` when running cmake, and similarly +`-DCUDA_STATIC_RUNTIME=ON` when running maven. This will statically link in the CUDA runtime +and result in a jar with no classifier that should run on any host that has a version of the +driver new enough to support the runtime that this was built with. Unfortunately `libnvrtc` is still +required for runtime code generation which also is tied to a specific version of cuda. To build with maven for dynamic linking you would run. diff --git a/java/pom.xml b/java/pom.xml index ee1a7ae69ff..f3e573c8c57 100755 --- a/java/pom.xml +++ b/java/pom.xml @@ -413,6 +413,10 @@ } else { pom.properties['cuda.classifier'] = '' } + + if (pom.properties['CUDA_STATIC_RUNTIME'] == 'ON') { + println 'WARNING RUNNING WITH STATIC LINKING DOES NOT FULLY WORK. USE WITH CAUTION.' + } @@ -426,22 +430,6 @@ ${cuda.classifier} - - org.codehaus.mojo - native-maven-plugin - 1.0-alpha-8 - true - - - - ai.rapids.cudf.Cuda - ai.rapids.cudf.ColumnVector - ai.rapids.cudf.Table - ai.rapids.cudf.Rmm - - ${basedir}/src/main/native/include/ - - org.apache.maven.plugins maven-surefire-plugin @@ -479,8 +467,6 @@ ${native.cudf.path} libcudf.so - libNVCategory.so - libNVStrings.so diff --git a/java/src/main/java/ai/rapids/cudf/NativeDepsLoader.java b/java/src/main/java/ai/rapids/cudf/NativeDepsLoader.java index bf4ea531402..c159a088d86 100755 --- a/java/src/main/java/ai/rapids/cudf/NativeDepsLoader.java +++ b/java/src/main/java/ai/rapids/cudf/NativeDepsLoader.java @@ -34,8 +34,6 @@ public class NativeDepsLoader { private static final String[] loadOrder = new String[] { "boost_filesystem", "rmm", - "NVStrings", - "NVCategory", "cudf", "cudfjni" };