You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下PySpark启用GPU时加载cudf jni库失败求助

PySpark(Windows 10)加载cudf JNI库失败的解决方案

问题重现

启动带GPU支持的PySpark时执行以下命令:

pyspark --jars "${SPARK_HOME}/jars/rapids-4-spark_2.12-23.12.2.jar,${SPARK_HOME}/jars/cudf-23.12.1" --conf spark.plugins=com.nvidia.spark.SQLPlugin --conf spark.rapids.sql.incompatibleOps.enabled=true

出现错误:

24/02/08 15:55:25 ERROR NativeDepsLoader: Could not load cudf jni library...
java.io.IOException: Error loading dependencies

无参数启动pyspark或spark-submit运行Python文件正常,环境信息:

  • NVIDIA GeForce RTX 3090
  • Driver Version: 551.23
  • CUDA Version: 12.4
  • Spark jars目录已放置rapids-4-spark_2.12-23.12.2.jar和cudf-23.12.1.jar

解决方案

1. 修复启动命令的jar路径错误

命令中cudf-23.12.1缺少.jar后缀,正确命令应为:

pyspark --jars "${SPARK_HOME}/jars/rapids-4-spark_2.12-23.12.2.jar,${SPARK_HOME}/jars/cudf-23.12.1.jar" --conf spark.plugins=com.nvidia.spark.SQLPlugin --conf spark.rapids.sql.incompatibleOps.enabled=true

2. 匹配CUDA与RAPIDS版本兼容性

RAPIDS Accelerator 23.12.x官方适配的CUDA版本是12.2,你的环境是CUDA 12.4,版本不匹配会导致JNI库加载失败。建议安装CUDA Toolkit 12.2,并将CUDA_PATH\bin添加到系统PATH环境变量最前端,确保优先加载对应版本的CUDA依赖。

3. 确认cudf jar适配Windows平台

RAPIDS的cudf jar分平台发布,若你下载的是Linux版本jar,Windows系统无法加载其中的native库。需重新下载适配Windows + CUDA 12.2的cudf jar(文件名通常包含-windows-x86_64标识),替换现有文件。

4. 澄清GPU发现脚本的误解

GPU发现脚本是Linux平台专属工具,Windows系统无需额外配置,此问题与该脚本无关。

5. 排查具体依赖缺失

添加日志参数查看详细错误信息,定位缺失的依赖库:

pyspark --jars "${SPARK_HOME}/jars/rapids-4-spark_2.12-23.12.2.jar,${SPARK_HOME}/jars/cudf-23.12.1.jar" --conf spark.plugins=com.nvidia.spark.SQLPlugin --conf spark.rapids.sql.incompatibleOps.enabled=true --conf spark.driver.extraJavaOptions=-Dorg.slf4j.simpleLogger.defaultLogLevel=debug

若日志显示找不到cudart64_12.dll等文件,说明CUDA Toolkit未正确配置或版本不匹配。

6. 注意Windows平台的实验性支持

RAPIDS Accelerator for Spark在Windows平台仅为实验性支持,部分功能可能存在兼容性问题,若上述方案无效,可考虑切换到Linux平台部署以获得更稳定的支持。

内容的提问来源于stack exchange,提问作者Karthik Sankaran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 09:53:13