-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable Debug build for native code in spark-rapids-jni #1573
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -81,6 +81,9 @@ | |
<RMM_LOGGING_LEVEL>OFF</RMM_LOGGING_LEVEL> | ||
<SPARK_RAPIDS_JNI_CXX_FLAGS/> | ||
<USE_GDS>OFF</USE_GDS> | ||
<LIBCUDF_BUILD_TYPE>Release</LIBCUDF_BUILD_TYPE> | ||
<BUILD_TYPE>${LIBCUDF_BUILD_TYPE}</BUILD_TYPE> | ||
<CUDA_FLAGS_DEBUG>-g</CUDA_FLAGS_DEBUG> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this intended to be overridden by the user for some use cases? I assume this is only used for Debug builds, and I'm a bit surprised this needs to be specified at all. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, it's a little weird, but the default flags only adds |
||
<BUILD_TESTS>OFF</BUILD_TESTS> | ||
<BUILD_BENCHMARKS>OFF</BUILD_BENCHMARKS> | ||
<BUILD_FAULTINJ>ON</BUILD_FAULTINJ> | ||
|
@@ -393,6 +396,7 @@ | |
<property name="RMM_LOGGING_LEVEL" value="${RMM_LOGGING_LEVEL}"/> | ||
<property name="USE_GDS" value="${USE_GDS}"/> | ||
<property name="BUILD_BENCHMARKS" value="${BUILD_BENCHMARKS}"/> | ||
<property name="LIBCUDF_BUILD_TYPE" value="${LIBCUDF_BUILD_TYPE}"/> | ||
<ant antfile="build-libcudf.xml" target="build-libcudf"/> | ||
</target> | ||
</configuration> | ||
|
@@ -415,6 +419,7 @@ | |
<arg value="-DBUILD_SHARED_LIBS=OFF"/> | ||
<arg value="-DCUDA_STATIC_RUNTIME=ON"/> | ||
<arg value="-DCUDF_JNI_LIBCUDF_STATIC=ON"/> | ||
<arg value="-DCMAKE_BUILD_TYPE=${LIBCUDF_BUILD_TYPE}"/> | ||
<arg value="-DGPU_ARCHS=${GPU_ARCHS}"/> | ||
<arg value="-DCUDF_USE_PER_THREAD_DEFAULT_STREAM=${CUDF_USE_PER_THREAD_DEFAULT_STREAM}"/> | ||
<arg value="-DRMM_LOGGING_LEVEL=${RMM_LOGGING_LEVEL}"/> | ||
|
@@ -443,6 +448,8 @@ | |
failonerror="true" | ||
executable="cmake"> | ||
<arg value="${basedir}/src/main/cpp"/> | ||
<arg value="-DCMAKE_BUILD_TYPE=${BUILD_TYPE}"/> | ||
<arg value="-DCMAKE_CUDA_FLAGS_DEBUG=${CUDA_FLAGS_DEBUG}"/> | ||
<arg value="-DGPU_ARCHS=${GPU_ARCHS}"/> | ||
<arg value="-DCUDF_USE_PER_THREAD_DEFAULT_STREAM=${CUDF_USE_PER_THREAD_DEFAULT_STREAM}"/> | ||
<arg value="-DRMM_LOGGING_LEVEL=${RMM_LOGGING_LEVEL}"/> | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In my previous experience, libcudf as a whole fails to build with
BUILD_TYPE=Debug
. I have been relying on selective Debug compiling https://github.com/rapidsai/cudf/blob/branch-23.12/CONTRIBUTING.md#device-debug-symbols. After a certain threshold depending on how many files are compiled with debugging symbols, the plugin slow to start or hangs for me.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm wondering now, if I should try the CUDF approach here with spark-rapids-jni code and then maybe file another PR with a similar section in spark-rapids-jni CONTRIBUTING.md if that works with the way we build.
Might make a bit more sense then.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Closing this for now.