From 49772dc3f3d06de2c8e0f86b5e6aa87870194ca1 Mon Sep 17 00:00:00 2001 From: Jason Lowe Date: Thu, 18 Mar 2021 16:36:17 -0500 Subject: [PATCH] Fix internal compiler error during JNI Docker build --- java/ci/Dockerfile.centos7 | 6 +++--- java/ci/README.md | 4 ++-- java/ci/build-in-docker.sh | 26 +------------------------- java/src/main/native/CMakeLists.txt | 6 ++++-- 4 files changed, 10 insertions(+), 32 deletions(-) diff --git a/java/ci/Dockerfile.centos7 b/java/ci/Dockerfile.centos7 index 7e0e1c70d72..cbf7e22b229 100644 --- a/java/ci/Dockerfile.centos7 +++ b/java/ci/Dockerfile.centos7 @@ -1,5 +1,5 @@ # -# Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved. +# Copyright (c) 2020-2021, NVIDIA CORPORATION. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +25,7 @@ FROM nvidia/cuda:$CUDA_VERSION-devel-centos7 ### Install basic requirements RUN yum install -y centos-release-scl -RUN yum install -y devtoolset-7 epel-release +RUN yum install -y devtoolset-8 epel-release RUN yum install -y git zlib-devel maven tar wget patch ## pre-create the CMAKE_INSTALL_PREFIX folder, set writable by any user for Jenkins @@ -34,7 +34,7 @@ RUN mkdir /usr/local/rapids && mkdir /rapids && chmod 777 /usr/local/rapids && c RUN cd /rapids/ && wget https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.gz && \ tar zxf boost_1_72_0.tar.gz && \ cd boost_1_72_0 && \ - scl enable devtoolset-7 "./bootstrap.sh --prefix=/usr && ./b2 install --with-filesystem threading=multi link=static cxxflags=-fPIC; exit 0" + scl enable devtoolset-8 "./bootstrap.sh --prefix=/usr && ./b2 install --with-filesystem threading=multi link=static cxxflags=-fPIC; exit 0" RUN cd /usr/local/ && wget --quiet https://github.com/Kitware/CMake/releases/download/v3.19.0/cmake-3.19.0-Linux-x86_64.tar.gz && \ tar zxf cmake-3.19.0-Linux-x86_64.tar.gz diff --git a/java/ci/README.md b/java/ci/README.md index 865ed7fd083..3ffed71b27c 100644 --- a/java/ci/README.md +++ b/java/ci/README.md @@ -39,12 +39,12 @@ Here I choose to download again in the container. git clone --recursive https://github.com/rapidsai/cudf.git -b branch-0.19 ``` -### Build cuDF jar +### Build cuDF jar with devtoolset ```bash cd cudf export WORKSPACE=`pwd` -scl enable devtoolset-7 "java/ci/build-in-docker.sh" +scl enable devtoolset-8 "java/ci/build-in-docker.sh" ``` ### The output diff --git a/java/ci/build-in-docker.sh b/java/ci/build-in-docker.sh index 7e51a150ebc..eee943cde38 100755 --- a/java/ci/build-in-docker.sh +++ b/java/ci/build-in-docker.sh @@ -31,12 +31,7 @@ SIGN_FILE=$1 OUT_PATH=$WORKSPACE/$OUT # set on Jenkins parameter -if [ -z $RMM_VERSION ] -then -RMM_VERSION=`git describe --tags | grep -o -E '([0-9]+\.[0-9]+)'` -fi -echo "RMM_VERSION: $RMM_VERSION,\ - SIGN_FILE: $SIGN_FILE,\ +echo "SIGN_FILE: $SIGN_FILE,\ SKIP_JAVA_TESTS: $SKIP_JAVA_TESTS,\ BUILD_CPP_TESTS: $BUILD_CPP_TESTS,\ ENABLED_PTDS: $ENABLE_PTDS,\ @@ -47,30 +42,11 @@ INSTALL_PREFIX=/usr/local/rapids export GIT_COMMITTER_NAME="ci" export GIT_COMMITTER_EMAIL="ci@nvidia.com" export CUDACXX=/usr/local/cuda/bin/nvcc -export RMM_ROOT=$INSTALL_PREFIX -export DLPACK_ROOT=$INSTALL_PREFIX export LIBCUDF_KERNEL_CACHE_PATH=/rapids # add cmake 3.19 to PATH export PATH=/usr/local/cmake-3.19.0-Linux-x86_64/bin:$PATH -cd /rapids/ -git clone --recurse-submodules https://github.com/rapidsai/rmm.git -b branch-$RMM_VERSION -git clone --recurse-submodules https://github.com/rapidsai/dlpack.git -b cudf - -###### Build rmm/dlpack ###### -mkdir -p /rapids/rmm/build -cd /rapids/rmm/build -echo "RMM SHA: `git rev-parse HEAD`" -cmake .. -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX -DBUILD_TESTS=$BUILD_CPP_TESTS -make -j$PARALLEL_LEVEL install - -mkdir -p /rapids/dlpack/build -cd /rapids/dlpack/build -echo "DLPACK SHA: `git rev-parse HEAD`" -cmake .. -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX -DBUILD_TESTS=$BUILD_CPP_TESTS -make -j$PARALLEL_LEVEL install - ###### Build libcudf ###### rm -rf $WORKSPACE/cpp/build mkdir -p $WORKSPACE/cpp/build diff --git a/java/src/main/native/CMakeLists.txt b/java/src/main/native/CMakeLists.txt index ceafc75f840..46b3f0c5a53 100755 --- a/java/src/main/native/CMakeLists.txt +++ b/java/src/main/native/CMakeLists.txt @@ -125,7 +125,8 @@ find_path(LIBCUDACXX_INCLUDE "cuda" "${CUDF_CPP_BUILD_DIR}/_deps/libcudacxx-src/include") find_path(SPDLOG_INCLUDE "spdlog" - HINTS "$ENV{RMM_ROOT}/_deps/spdlog-src/include" + HINTS "${CUDF_CPP_BUILD_DIR}/_deps/spdlog-src/include" + "$ENV{RMM_ROOT}/_deps/spdlog-src/include" "$ENV{RMM_ROOT}/include" "$ENV{CONDA_PREFIX}/include") @@ -147,7 +148,8 @@ find_library(CUDF_LIB "cudf" REQUIRED HINTS ${CUDF_LIB_HINTS}) # - RMM ------------------------------------------------------------------------------------------- find_path(RMM_INCLUDE "rmm" - HINTS "$ENV{RMM_ROOT}/include" + HINTS "${CUDF_CPP_BUILD_DIR}/_deps/rmm-src/include" + "$ENV{RMM_ROOT}/include" "$ENV{RMM_HOME}/include" "$ENV{CONDA_PREFIX}/include/rmm" "$ENV{CONDA_PREFIX}/include")