跳转到主要内容

cuML - RAPIDS ML算法

项目描述

cuML Python包

此文件夹包含cuML算法和ML原语(在Python cuML包中分发)的Python和Cython代码。

内容

构建配置

构建系统使用setup.py进行配置和构建。

cuML的setup.py可以通过环境变量和命令行参数进行配置。

环境变量是

环境变量 可能值 未设置时的默认行为 行为
CUDA_HOME path/to/cuda_toolkit 通过nvcc的位置推断 允许手动指定CUDA工具包位置的可选变量。
CUML_BUILD_PATH path/to/libcuml_build_folder 在path_to_cuml_repo/cpp/build中查找 允许手动指定libcuml++构建文件夹位置的可选变量。
RAFT_PATH path/to/raft 在path_to_cuml_repo/cpp/build中查找,如果未找到则克隆 允许手动指定RAFT存储库位置的可选变量。

命令行参数(即调用时与setup.py一起传递的参数,例如setup.py --singlegpu)是

参数 行为
clean --all 清理所有Python和Cython工件,包括pycache文件夹、由cythonization产生的.cpp文件和编译扩展。
--singlegpu 构建不带多GPU算法的cuML的选项。删除对nccl、libcumlprims和ucx-py的依赖。

cuml.raft中的RAFT集成

RAFT的Python和Cython位于RAFT仓库中。它被设计成可以包含到项目中,而不是单独分发,因此在构建时,setup.py会将位于/python/cuml/raft/的cuML创建一个符号链接到RAFT的Python文件夹

对于需要修改RAFT代码的开发者,请参阅RAFT开发者指南以获取建议。

要在构建时配置RAFT

  1. 如果环境变量RAFT_PATH指向了RAFT仓库,则将使用该路径。
  2. 如果存在一个已经克隆了RAFT的libcuml构建文件夹,setup.py将使用该RAFT。此位置的配置可以通过环境变量CUML_BUILD_PATH进行。
  3. 如果上述任何一种情况都没有发生,则setup.py将克隆RAFT并直接使用它。

RAFT的Python代码被包含在cuML的构建和可分发工件中,就像它始终存在于cuML的文件夹结构中一样。

构建需求

cuML的便利开发yaml文件包括了构建cuML所需的所有依赖项。

要构建cuML的Python包,需要以下依赖项

  • 与系统CUDA工具包对应的cudatoolkit版本
  • cython >= 0.29, < 0.30
  • numpy
  • cmake >= 3.14
  • 与cuML版本匹配的cudf版本
  • 与cuML版本匹配的libcuml版本
  • libcuml={{ version }}
  • cupy>=7.8.0,<12.0.0a0
  • joblib >=0.11

多GPU算法所需的包*

  • 与cuML版本匹配的libcumlprims版本
  • 与cuML版本匹配的ucx-py版本
  • 与cuML版本匹配的dask-cudf版本
  • nccl>=2.5
  • 与cuML版本匹配的rapids-dask-dependency版本
  • 可以使用--singlegpu参数标志避免此情况。

Python测试

Python测试基于pytest库。要运行它们,从path_to_cuml/python/文件夹,只需输入pytest

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

cuml_cu12-24.8.0.tar.gz (2.1 kB 查看散列)

上传时间

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面