-
Notifications
You must be signed in to change notification settings - Fork 242
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 Hybrid test cases in premerge/nightly CIs [databricks] #11906
base: branch-25.02
Are you sure you want to change the base?
Changes from 1 commit
65de010
e6cede2
1e4fc13
46e19df
4f2a4d6
4d52f90
c82eb29
65b585a
d214739
e0f1e3b
6331ab8
b1b8481
dbae63f
5e972d6
c6fa249
e95e7cc
092dab8
519f33c
b3b6f80
f0921a4
dd5d8f9
6149589
114b93a
36d3cdf
5bfd763
275fa3d
cbb5609
c1df7c4
99602c5
3d3b172
d718d8c
4e79c2b
aae45b9
4fd5fdb
fd2b513
7b87caa
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 |
---|---|---|
@@ -0,0 +1,51 @@ | ||
#!/bin/bash | ||
# | ||
# Copyright (c) 2025, 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. | ||
# You may obtain a copy of the License at | ||
# | ||
# http://www.apache.org/licenses/LICENSE-2.0 | ||
# | ||
# Unless required by applicable law or agreed to in writing, software | ||
# distributed under the License is distributed on an "AS IS" BASIS, | ||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
# See the License for the specific language governing permissions and | ||
# limitations under the License. | ||
# | ||
|
||
set -ex | ||
|
||
. jenkins/version-def.sh | ||
|
||
test_hybrid_feature() { | ||
echo "Run hybrid execution test cases..." | ||
|
||
# parameters for Hybrid featrue | ||
spark_prefix="${SPARK_VER:0:3}" # get prefix from SPARK_VER, e.g.: 3.2, 3.3 ... 3.5 | ||
GLUTEN_BUNDLE_JAR="gluten-velox-bundle-spark${spark_prefix}_2.12-ubuntu_${GLUTEN_FOR_OS}_x86_64-${GLUTEN_VERSION}.jar" | ||
HYBRID_JAR="rapids-4-spark-hybrid_2.12-${PROJECT_TEST_VER}.jar" | ||
GLUTEN_THIRD_PARTY_JAR="gluten-thirdparty-lib-${GLUTEN_VERSION}-ubuntu-${GLUTEN_FOR_OS}-x86_64.jar" | ||
|
||
# download Gluten, Hybrid jars | ||
mvn -B dependency:get -DgroupId=com.nvidia \ | ||
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. nit: avoid using mvn dependency:get if possible, the IT run does not require mvn dep. |
||
-DartifactId=gluten-velox-bundle \ | ||
-Dversion=${GLUTEN_VERSION} \ | ||
-Dpackaging=jar \ | ||
-Dclassifier=spark${spark_prefix}_2.12-ubuntu_${GLUTEN_FOR_OS} | ||
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. typo ?
|
||
-Dtransitive=false \ | ||
-Ddest=/tmp/$GLUTEN_BUNDLE_JAR | ||
mvn -B dependency:get -DgroupId=com.nvidia \ | ||
-DartifactId=rapids-4-spark-hybrid_2.12 \ | ||
-Dversion=${PROJECT_TEST_VER} \ | ||
-Dpackaging=jar \ | ||
-Dtransitive=false \ | ||
-Ddest=/tmp/$HYBRID_JAR | ||
wget -O /tmp/${GLUTEN_THIRD_PARTY_JAR} ${MVN_URM_MIRROR}/com/nvidia/gluten-thirdparty-lib/${GLUTEN_VERSION}/${GLUTEN_THIRD_PARTY_JAR} | ||
|
||
# run Hybrid Python tests | ||
LOAD_HYBRID_BACKEND=1 \ | ||
HYBRID_BACKEND_JARS=/tmp/${HYBRID_JAR},/tmp/${GLUTEN_BUNDLE_JAR},/tmp/${GLUTEN_THIRD_PARTY_JAR} \ | ||
./integration_tests/run_pyspark_from_build.sh -m hybrid_test | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
#!/bin/bash | ||
# | ||
# Copyright (c) 2020-2024, NVIDIA CORPORATION. All rights reserved. | ||
# Copyright (c) 2020-2025, 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. | ||
|
@@ -109,6 +109,10 @@ mvn_verify() { | |
do | ||
TZ=$tz ./integration_tests/run_pyspark_from_build.sh -m tz_sensitive_test | ||
done | ||
|
||
# test Hybrid feature | ||
source "${WORKSPACE}/jenkins/hybrid_execution.sh" | ||
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. how long will this test take? we may need some duration to determine if we should put it into in ci1 or ci2 stage for balancing the workloads |
||
test_hybrid_feature | ||
} | ||
|
||
rapids_shuffle_smoke_test() { | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -26,6 +26,9 @@ for VAR in $OVERWRITE_PARAMS; do | |
done | ||
IFS=$PRE_IFS | ||
|
||
# configs for Hybrid feature | ||
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. Better use default value patten instead of hardcode, then we can overwrite these vars outside without changing this script
|
||
GLUTEN_VERSION=1.2.0 | ||
GLUTEN_FOR_OS=20.04 | ||
|
||
CUDA_CLASSIFIER=${CUDA_CLASSIFIER:-"cuda11"} | ||
CLASSIFIER=${CLASSIFIER:-"$CUDA_CLASSIFIER"} # default as CUDA_CLASSIFIER for compatibility | ||
|
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.
it's better to make this script for preparing artifacts only and the actual caller place to run test command directly,
or at least separate the func of artifacts preparation from the actual test call func.
sth like