Skip to content

Commit

Permalink
Update build system and docs to new minimum cugraph-0.20 requirements (
Browse files Browse the repository at this point in the history
…#1552)

Close #1528 

Following cuDF (rapidsai/cudf#7780)

cugraph-0.20 increase the minimum requirements in the following way:

    GCC version 9.3+ is required
    CUDA and C++ code now is compiled with -std=c++17
    We require CUDA Toolkit version 11.0 or greater

This updates the build-system and the README with these new requirements

Authors:
  - Seunghwa Kang (https://github.com/seunghwak)

Approvers:
  - Chuck Hastings (https://github.com/ChuckHastings)
  - AJ Schmidt (https://github.com/ajschmidt8)
  - Brad Rees (https://github.com/BradReesWork)

URL: #1552
  • Loading branch information
seunghwak authored Apr 26, 2021
1 parent 53be1f9 commit e40570a
Show file tree
Hide file tree
Showing 6 changed files with 28 additions and 124 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,14 +151,14 @@ Install and update cuGraph using the conda command:

```bash

# CUDA 10.1
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph cudatoolkit=10.1

# CUDA 10.2
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph cudatoolkit=10.2

# CUDA 11.0
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph cudatoolkit=11.0

# CUDA 11.1
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph cudatoolkit=11.1

# CUDA 11.2
conda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph cudatoolkit=11.2
```

Note: This conda installation only applies to Linux and Python versions 3.7/3.8.
Expand Down
38 changes: 18 additions & 20 deletions SOURCEBUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ The cuGraph package include both a C/C++ CUDA portion and a python portion. Bot
## Prerequisites

__Compiler__:
* `gcc` version 5.4+
* `nvcc` version 10.0+
* `gcc` version 9.3+
* `nvcc` version 11.0+
* `cmake` version 3.18+

__CUDA:__
* CUDA 10.1+
* NVIDIA driver 396.44+
* CUDA 11.0+
* NVIDIA driver 450.80.02+
* Pascal architecture or better

__Other__
Expand Down Expand Up @@ -47,16 +47,14 @@ __Create the conda development environment__
```bash
# create the conda environment (assuming in base `cugraph` directory)

# for CUDA 11.0
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.0.yml

# for CUDA 11.1
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.1.yml

# for CUDA 10.1
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.1.yml

# for CUDA 10.2
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.2.yml

# for CUDA 11
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.0.yml
# for CUDA 11.2
conda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.2.yml

# activate the environment
conda activate cugraph_dev
Expand All @@ -70,14 +68,14 @@ conda deactivate

```bash

# for CUDA 10.1
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.1.yml
# for CUDA 11.0
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.0.yml

# for CUDA 10.2
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.2.yml
# for CUDA 11.1
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.1.yml

# for CUDA 11
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.0.yml
# for CUDA 11.2
conda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda11.2.yml

conda activate cugraph_dev
```
Expand Down Expand Up @@ -232,8 +230,8 @@ Next the env_vars.sh file needs to be edited
vi ./etc/conda/activate.d/env_vars.sh

#!/bin/bash
export PATH=/usr/local/cuda-10.1/bin:$PATH # or cuda-10.2 if using CUDA 10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64:$LD_LIBRARY_PATH # or cuda-10.2 if using CUDA 10.2
export PATH=/usr/local/cuda-11.0/bin:$PATH # or cuda-11.1 if using CUDA 11.1 and cuda-11.2 if using CUDA 11.2, respectively
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64:$LD_LIBRARY_PATH # or cuda-11.1 if using CUDA 11.1 and cuda-11.2 if using CUDA 11.2, respectively
```
```
Expand Down
47 changes: 0 additions & 47 deletions conda/environments/cugraph_dev_cuda10.1.yml

This file was deleted.

47 changes: 0 additions & 47 deletions conda/environments/cugraph_dev_cuda10.2.yml

This file was deleted.

4 changes: 2 additions & 2 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,12 @@ option(BUILD_STATIC_FAISS "Build the FAISS library for nearest neighbors search
###################################################################################################
# - compiler options ------------------------------------------------------------------------------

set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_C_COMPILER $ENV{CC})
set(CMAKE_CXX_COMPILER $ENV{CXX})
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_CUDA_STANDARD 14)
set(CMAKE_CUDA_STANDARD 17)
set(CMAKE_CUDA_STANDARD_REQUIRED ON)

if(CMAKE_COMPILER_IS_GNUCXX)
Expand Down
4 changes: 2 additions & 2 deletions python/setup.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2018-2020, NVIDIA CORPORATION.
# Copyright (c) 2018-2021, NVIDIA CORPORATION.
# 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
Expand Down Expand Up @@ -111,7 +111,7 @@ def run(self):
runtime_library_dirs=[conda_lib_dir],
libraries=['cugraph', 'nccl'],
language='c++',
extra_compile_args=['-std=c++14'])
extra_compile_args=['-std=c++17'])
]

for e in EXTENSIONS:
Expand Down

0 comments on commit e40570a

Please sign in to comment.