从源代码构建和安装 cuSpatial#
先决条件#
gcc >= 7.5
cmake >= 3.26.4
miniforge
获取 cuSpatial 仓库#
export `CUSPATIAL_HOME=$(pwd)/cuspatial` && \
git clone https://github.com/rapidsai/cuspatial.git $CUSPATIAL_HOME
安装依赖项#
export CUSPATIAL_HOME=$(pwd)/cuspatial
克隆 cuSpatial 仓库
conda env create -n cuspatial --file conda/environments/all_cuda-118_arch-x86_64.yaml
构建 cuSpatial#
在 cuSpatial 开发容器中:#
执行 build-cuspatial-cpp
来构建 libcuspatial
。可以添加以下选项。
-DBUILD_TESTS=ON
: 构建libcuspatial
单元测试。-DBUILD_BENCHMARKS=ON
: 构建libcuspatial
基准测试。-DCMAKE_BUILD_TYPE=Debug
: 创建libcuspatial
的调试版本 (默认是发布版本)。此外,执行build-cuspatial-python
来构建 cuSpatial cython 组件。
在裸机上:#
编译 libcuspatial (C++), cuspatial (cython) 和 C++ 测试
cd $CUSPATIAL_HOME && \
chmod +x ./build.sh && \
./build.sh libcuspatial cuspatial tests
此外,以下选项也常用
benchmarks
: 构建 libcuspatial 基准测试clean
: 移除所有现有的构建产物和配置。执行./build.sh -h
查看所有可用选项的完整列表。
使用 C++ 和 Python 测试验证安装#
注意
为了管理不同分支和构建类型之间的差异,构建目录位于 $CUSPATIAL_HOME/cpp/build/[release|debug]
,取决于构建类型,而 $CUSPATIAL_HOME/cpp/build/latest
是指向最新构建目录的符号链接。在裸机构建中,移除下方路径中额外的 latest
这一层级。
C++ 测试位于
$CUSPATIAL_HOME/cpp/build/latest/gtests
目录中。Python 测试位于
$CUSPATIAL_HOME/python/cuspatial/cuspatial/tests
目录中。
执行 C++ 测试
ninja -C $CUSPATIAL_HOME/cpp/build/latest test
执行 Python 测试
pytest $CUSPATIAL_HOME/python/cuspatial/cuspatial/tests/