Commit 4383de9
authored
Add Spark 4.0.4 shim support[databricks] (#15313)
Fixes #15270.
### Description
- Add the Spark 4.0.4 Maven profile, shim service provider, version
checks, generated support matrices, and shared shim annotations so the
plugin can build and load against Spark 4.0.4.
- Extend Spark-version helpers and AST compatibility handling for Spark
4.0.4 because ACOSH uses a CPU fallback path on this release.
- Include Spark 4.0.4 in the download documentation so users can
identify it as a supported Apache Spark version.
- Validate the complete Scala 2.13 / CUDA 13 reactor with
`SPARK_HOME=/bigdata/work/tools/spark-4.0.4-bin-hadoop3 mvn -s
~/.m2/settings_art.xml -f scala2.13/pom.xml -Dbuildver=404
-Dcuda.version=cuda13 -Dspark.test.home=\"$SPARK_HOME\" package`; all 15
modules passed, including 2,138 Scala tests with 0 failures.
- Local NDS performance results with RAPIDS shuffle writer threads set
to `8` show no overall performance regression observed for Spark 4.0.4.
| Item | Value |
| ------------- |
---------------------------------------------------------- |
| Dataset | /bigdata/tpcds_data/parquet_100f |
| Format | Parquet |
| RAPIDS jar | rapids-4-spark_2.13-26.08.0-SNAPSHOT-cuda13-403-404.jar |
| Spark 4.0.3 | spark-4.0.3-bin-hadoop3 |
| Spark 4.0.4 | spark-4.0.4-bin-hadoop3 |
| Runs | 3 per shim |
| Compared runs | Run 1 and run 2 |
| Shuffle conf | `spark.rapids.shuffle.multiThreaded.writer.threads=8` |
| Query status | 618 query JSON records checked, 0 non-Completed |
| Result | No overall performance regression observed for Spark 4.0.4 |
| Metric | Spark 4.0.3 | Spark 4.0.4 | 4.0.4 vs 4.0.3 |
| -------------------------- | ----------- | ----------- |
-------------- |
| Power run 1 | 770.000s | 744.000s | -3.38% |
| Power run 2 | 750.000s | 752.000s | +0.27% |
| Power run avg | 760.000s | 748.000s | -1.58% |
| Sum of per-query avg times | 759.059s | 746.649s | -1.63% |
### Checklists
Documentation
- [x] Updated for new or modified user-facing features or behaviors
- [ ] No user-facing change
Testing
- [ ] Added or modified tests to cover new code paths
- [x] Covered by existing tests
(Please provide the names of the existing tests in the PR description.)
- [ ] Not required
Performance
- [x] Tests ran and results are added in the PR description
- [ ] Issue filed with a link in the PR description
- [ ] Not required
Signed-off-by: Firestarman <firestarmanllc@gmail.com>1 parent 9db460f commit 4383de9
214 files changed
Lines changed: 1828 additions & 12 deletions
File tree
- datagen/src/main/spark400/scala/org/apache/spark/sql/tests/datagen
- docs
- iceberg
- iceberg-1-10-x/src/main/spark400/java/com/nvidia/spark/rapids/iceberg
- iceberg-1-11-x/src/main
- spark400/java/com/nvidia/spark/rapids/iceberg
- spark402/scala/com/nvidia/spark/rapids/iceberg/iceberg111x
- integration_tests/src
- main/python
- test/spark400/scala/org/apache/spark/sql/rapids/shims
- scala2.13
- sql-plugin/src
- main
- spark330db/scala
- com/nvidia/spark/rapids/shims
- parquet
- org/apache/spark/sql
- execution/datasources/rapids
- rapids
- aggregate
- shims
- spark330
- java/com/nvidia/spark/rapids/shims
- scala
- com/nvidia/spark/rapids
- shims
- org/apache/spark
- rapids/shims
- sql
- execution/datasources/parquet
- hive/rapids/shims
- rapids
- execution/python/shims
- shims
- storage
- spark331/scala/com/nvidia/spark/rapids/shims
- spark332db/scala
- com/nvidia/spark/rapids/shims
- org/apache/spark/sql
- execution/datasources
- hive/rapids/shims
- rapids
- shims
- spark334/scala/com/nvidia/spark/rapids/shims
- spark340/scala
- com/nvidia/spark/rapids
- shims
- parquet
- shuffle
- org/apache/spark/sql
- catalyst
- csv
- json
- errors
- rapids
- execution
- shims
- spark341db/scala
- com/nvidia/spark/rapids/shims
- org/apache/spark/sql
- execution/rapids/shims
- hive/rapids/shims
- rapids/execution/python/shims
- spark342/scala/com/nvidia/spark/rapids/shims
- spark350db143/scala
- com/nvidia/spark/rapids
- shims
- org/apache/spark/sql/rapids
- execution/python/shims
- shims
- spark350/scala
- com/nvidia/spark/rapids
- shims
- org/apache/spark/sql
- catalyst
- execution/datasources
- parquet/rapids/shims
- v2
- rapids
- execution
- shims
- spark352/scala/com/nvidia/spark/rapids/shims
- spark400/scala
- com/nvidia/spark/rapids/shims
- org/apache/spark/sql
- execution
- datasources/v2
- rapids
- rapids/shims
- hive/rapids/shims
- nvidia
- rapids
- execution
- python/shims
- shims
- spark403/scala/com/nvidia/spark/rapids/shims
- spark403
- spark404/scala/com/nvidia/spark/rapids/shims/spark404
- test
- spark403/scala/com/nvidia/spark/rapids/shims
- spark403
- spark404/scala/com/nvidia/spark/rapids/shims/spark404
- tests/src/test
- spark330/scala
- com/nvidia/spark/rapids
- shims
- org/apache/spark/sql/rapids
- metrics/source
- spark340/scala/com/nvidia/spark/rapids/shuffle
- spark341db/scala/com/nvidia/spark/rapids
- spark350/scala/org/apache/spark/sql/rapids
- tools/generated_files/404
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| 29 | + | |
28 | 30 | | |
29 | 31 | | |
30 | 32 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | | - | |
| 50 | + | |
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
21 | 22 | | |
22 | 23 | | |
23 | 24 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
19 | 20 | | |
20 | 21 | | |
21 | 22 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
65 | | - | |
66 | | - | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
267 | 267 | | |
268 | 268 | | |
269 | 269 | | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
270 | 276 | | |
271 | 277 | | |
272 | 278 | | |
| |||
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
| 30 | + | |
29 | 31 | | |
30 | 32 | | |
31 | 33 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
704 | 704 | | |
705 | 705 | | |
706 | 706 | | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
707 | 733 | | |
708 | 734 | | |
709 | 735 | | |
| |||
1035 | 1061 | | |
1036 | 1062 | | |
1037 | 1063 | | |
| 1064 | + | |
1038 | 1065 | | |
1039 | 1066 | | |
1040 | 1067 | | |
| |||
1755 | 1782 | | |
1756 | 1783 | | |
1757 | 1784 | | |
1758 | | - | |
| 1785 | + | |
1759 | 1786 | | |
1760 | 1787 | | |
1761 | 1788 | | |
1762 | 1789 | | |
1763 | 1790 | | |
1764 | | - | |
1765 | | - | |
| 1791 | + | |
| 1792 | + | |
1766 | 1793 | | |
1767 | 1794 | | |
1768 | 1795 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
704 | 704 | | |
705 | 705 | | |
706 | 706 | | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
707 | 733 | | |
708 | 734 | | |
709 | 735 | | |
| |||
1035 | 1061 | | |
1036 | 1062 | | |
1037 | 1063 | | |
| 1064 | + | |
1038 | 1065 | | |
1039 | 1066 | | |
1040 | 1067 | | |
| |||
1755 | 1782 | | |
1756 | 1783 | | |
1757 | 1784 | | |
1758 | | - | |
| 1785 | + | |
1759 | 1786 | | |
1760 | 1787 | | |
1761 | 1788 | | |
1762 | 1789 | | |
1763 | 1790 | | |
1764 | | - | |
1765 | | - | |
| 1791 | + | |
| 1792 | + | |
1766 | 1793 | | |
1767 | 1794 | | |
1768 | 1795 | | |
| |||
0 commit comments