{ "info": { "author": "NVIDIA Corporation", "author_email": "", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "#
 cuGraph - GPU Graph Analytics
\n\n[![Build Status](http://18.191.94.64/buildStatus/icon?job=cugraph-master)](http://18.191.94.64/job/cugraph-master/) [![Documentation Status](https://readthedocs.org/projects/cugraph/badge/?version=latest)](https://cugraph.readthedocs.io/en/latest/)\n\nThe [RAPIDS](https://rapids.ai) cuGraph library is a collection of graph analytics that process data found in GPU Dataframe - see [cuDF](https://github.com/rapidsai/cudf). cuGraph aims at provides a NetworkX-like API that will be familiar to data scientists, so they can now build GPU-accelerated workflows more easily.\n\n For more project details, see [rapids.ai](https://rapids.ai/).\n\n**NOTE:** For the latest stable [README.md](https://github.com/rapidsai/cudf/blob/master/README.md) ensure you are on the `master` branch.\n\n\n\n\n\n\n\n## Getting cuGraph\n### Intro\nThere are 4 ways to get cuGraph :\n1. [Quick start with Docker Demo Repo](#quick)\n1. [Conda Installation](#conda)\n1. [Pip Installation](#pip)\n1. [Build from Source](#source)\n\n\n\nBuilding from source is currently the only viable option. Once version 0.6 is release, the other options will be available. \n\n\n\n## Quick Start {#quick}\n\nPlease see the [Demo Docker Repository](https://hub.docker.com/r/rapidsai/rapidsai/), choosing a tag based on the NVIDIA CUDA version you\u2019re running. This provides a ready to run Docker container with example notebooks and data, showcasing how you can utilize all of the RAPIDS libraries: cuDF, cuML, and cuGraph.\n\n\n\n### Conda{#conda}\n\nIt is easy to install cuGraph using conda. You can get a minimal conda installation with [Miniconda](https://conda.io/miniconda.html) or get the full installation with [Anaconda](https://www.anaconda.com/download).\n\nInstall and update cuGraph using the conda command:\n\n```bash\n# CUDA 9.2\nconda install -c nvidia -c rapidsai -c numba -c conda-forge -c defaults cugraph\n\n# CUDA 10.0\nconda install -c nvidia/label/cuda10.0 -c rapidsai/label/cuda10.0 -c numba -c conda-forge -c defaults cugraph\n```\n\nNote: This conda installation only applies to Linux and Python versions 3.6/3.7.\n\n\n\n### Pip {#pip}\n\nIt is easy to install cuGraph using pip. You must specify the CUDA version to ensure you install the right package.\n\n```bash\n# CUDA 9.2\npip install cugraph-cuda92\n\n# CUDA 10.0.\npip install cugraph-cuda100\n```\n\n\n\n\n\n### Build from Source {#source}\n\nThe following instructions are for developers and contributors to cuGraph OSS development. These instructions are tested on Linux Ubuntu 16.04 & 18.04. Use these instructions to build cuGraph from source and contribute to its development. Other operating systems may be compatible, but are not currently tested.\n\nThe cuGraph package include both a C/C++ CUDA portion and a python portion. Both libraries need to be installed in order for cuGraph to operate correctly. \n\nThe following instructions are tested on Linux systems.\n\n\n\n#### Prerequisites\n\nCompiler requirement:\n\n* `gcc` version 5.4+\n* `nvcc` version 9.2\n* `cmake` version 3.12\n\n\n\nCUDA requirement:\n\n* CUDA 9.2+\n* NVIDIA driver 396.44+\n* Pascal architecture or better\n\nYou can obtain CUDA from [https://developer.nvidia.com/cuda-downloads](https://developer.nvidia.com/cuda-downloads).\n\n\n\nSince `cmake` will download and build Apache Arrow you may need to install Boost C++ (version 1.58+) before running\n`cmake`:\n\n```bash\n# Install Boost C++ for Ubuntu 16.04/18.04\n$ sudo apt-get install libboost-all-dev\n```\n\nor\n\n```bash\n# Install Boost C++ for Conda\n$ conda install -c conda-forge boost\n```\n\n\n\n#### Build and Install the C/C++ CUDA components\n\nTo install cuGraph from source, ensure the dependencies are met and follow the steps below:\n\n1) Clone the repository and submodules\n\n ```bash\n # Set the localtion to cuGraph in an environment variable CUGRAPH_HOME \n export CUGRAPH_HOME=$(pwd)/cugraph\n\n # Download the cuGraph repo\n git clone https://github.com/rapidsai/cugraph.git $CUGRAPH_HOME\n\n # Next load all the submodules\n cd $CUGRAPH_HOME\n git submodule update --init --recursive\n ```\n\n\n\n2) Create the conda development environment \n\n\u200b\tA) Building the `master` branch uses the `cugraph_dev` environment\n\n```bash\n# create the conda environment (assuming in base `cugraph` directory)\n# for CUDA 9.2\nconda env create --name cugraph_dev --file conda/environments/cugraph_dev.yml\n\n# for CUDA 10\nconda env create --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.yml\n\n# activate the environment\nconda activate cugraph_dev \n\n# to deactivate an environment\nconda deactivate\n```\n\n\n\n\u200b\tB) Create the conda development environment `cugraph_nightly` \n\nIf you are on the latest development branch then you must use the `cugraph_nightly` environment. The latest cuGraph code uses the latest cuDF features that might not yet be in the master branch. To work off of the latest development branch, which could be unstable, use the nightly build environment. \n\n```bash\n# create the conda environment (assuming in base `cugraph` directory)\nconda env create --name cugraph_nightly --file conda/environments/cugraph_nightly.yml\n\n# activate the environment\nconda activate cugraph_nightly \n\n```\n\n\n\n\n - The environment can be updated as development includes/changes the dependencies. To do so, run: \n\n\n\n```bash\n# for CUDA 9.2\nconda env update --name cugraph_dev --file conda/environments/cugraph_dev.yml\n\n# for CUDA 10\nconda env update --name cugraph_dev --file conda/environments/cugraph_dev_cuda10.yml\n\nconda activate cugraph_dev \n```\n\n\n\n\n\n3) Build and install `libcugraph`. CMake depends on the `nvcc` executable being on your path or defined in `$CUDACXX`.\n\n This project uses cmake for building the C/C++ library. To configure cmake, run:\n\n ```bash\n # Set the localtion to cuGraph in an environment variable CUGRAPH_HOME \n export CUGRAPH_HOME=$(pwd)/cugraph\n\n cd $CUGRAPH_HOME\n cd cpp\t \t\t# enter cpp directory\n mkdir build \t\t# create build directory \n cd build \t\t# enter the build directory\n cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \n\n # now build the code\n make -j\t\t\t\t# \"-j\" starts multiple threads\n make install\t\t# install the libraries \n ```\n\nThe default installation locations are `$CMAKE_INSTALL_PREFIX/lib` and `$CMAKE_INSTALL_PREFIX/include/cugraph` respectively.\n\n\n\n#### Building and installing the Python package\n\n5. Install the Python package to your Python path:\n\n```bash\ncd $CUGRAPH_HOME\ncd python\npython setup.py install # install cugraph python bindings\n```\n\n\n\n\n\n#### Run tests\n\n6. Run either the standalone tests or the Python tests with datasets\n - **C++ stand alone tests** \n\n From the build directory : \n\n ```bash\n # Run the cugraph tests\n cd $CUGRAPH_HOME\n cd cpp/build\n make test\n\n # alternatively, you can run individual test\n gtests/GDFGRAPH_TEST\t\t# this is an executable file\n ```\n\n - **Python tests with datasets** \n\n ```bash\n cd $CUGRAPH_HOME \n tar -zxvf cpp/src/tests/datasets.tar.gz -C / # tests look for data under '/'\n pytest \n ```\n\n\nNote: This conda installation only applies to Linux and Python versions 3.6/3.7.\n\n\n\n## Documentation\n\nPython API documentation can be generated from [docs](docs) directory.\n\n\n\n## C++ ABI issues\n\ncuGraph builds with C++14 features. By default, we build cuGraph with the latest ABI (the ABI changed with C++11). The version of cuDF pointed to in the conda installation above is build with the new ABI.\n\nIf you see link errors indicating trouble finding functions that use C++ strings when trying to build cuGraph you may have an ABI incompatibility.\n\nThere are a couple of complications that may make this a problem:\n* if you need to link in a library built with the old ABI, you may need to build the entire tool chain from source using the old ABI.\n* if you build cudf from source (for whatever reason), the default behavior for cudf (at least through version 0.5.x) is to build using the old ABI. You can build with the new ABI, but you need to follow the instructions in CUDF to explicitly turn that on.\n\nIf you must build cugraph with the old ABI, you can use the following command (instead of the cmake call above):\n\n```bash\ncmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX -DCMAKE_CXX11_ABI=OFF\n```\n\n\n\n### (OPTIONAL) Set environment variable on activation\n\nIt is possible to configure the conda environment to set environmental variables on activation. Providing instructions to set PATH to include the CUDA toolkit bin directory and LD_LIBRARY_PATH to include the CUDA lib64 directory will be helpful.\n\n\n\n```bash\ncd ~/anaconda3/envs/cugraph_dev\n\nmkdir -p ./etc/conda/activate.d\nmkdir -p ./etc/conda/deactivate.d\ntouch ./etc/conda/activate.d/env_vars.sh\ntouch ./etc/conda/deactivate.d/env_vars.sh\n```\n\n\n\nNext the env_vars.sh file needs to be edited\n\n```bash\nvi ./etc/conda/activate.d/env_vars.sh\n\n#!/bin/bash\nexport PATH=/usr/local/cuda-10.0/bin:$PATH # or cuda-9.2 if using CUDA 9.2\nexport LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH # or cuda-9.2 if using CUDA 9.2\n```\n\n\n\n```\nvi ./etc/conda/deactivate.d/env_vars.sh\n\n#!/bin/bash\nunset PATH\nunset LD_LIBRARY_PATH\n```\n\n\n\n\n\n\n\n------\n\n\n\n##
Open GPU Data Science\n\nThe RAPIDS suite of open source software libraries aim to enable execution of end-to-end data science and analytics pipelines entirely on GPUs. It relies on NVIDIA\u00ae CUDA\u00ae primitives for low-level compute optimization, but exposing that GPU parallelism and high-bandwidth memory speed through user-friendly Python interfaces.\n\n

\n\n### Apache Arrow on GPU\n\nThe GPU version of [Apache Arrow](https://arrow.apache.org/) is a common API that enables efficient interchange of tabular data between processes running on the GPU. End-to-end computation on the GPU avoids unnecessary copying and converting of data off the GPU, reducing compute time and cost for high-performance analytics common in artificial intelligence workloads. As the name implies, cuDF uses the Apache Arrow columnar data format on the GPU. Currently, a subset of the features in Apache Arrow are supported.\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rapidsai/cugraph", "keywords": "", "license": "Apache", "maintainer": "", "maintainer_email": "", "name": "cugraph", "package_url": "https://pypi.org/project/cugraph/", "platform": "", "project_url": "https://pypi.org/project/cugraph/", "project_urls": { "Homepage": "https://github.com/rapidsai/cugraph" }, "release_url": "https://pypi.org/project/cugraph/0.6.0/", "requires_dist": [ "numpy", "cython" ], "requires_python": "", "summary": "cuGraph - RAPIDS Graph Analytic Algorithms", "version": "0.6.0" }, "last_serial": 5098307, "releases": { "0.6.0": [ { "comment_text": "", "digests": { "md5": "92282793d502051b99af0dd02d05efd9", "sha256": "d0fb283c2d5424e8d49234fbc53e3cfcae541a20120cacfd02464686f97b07aa" }, "downloads": -1, "filename": "cugraph-0.6.0-cp36-cp36m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "92282793d502051b99af0dd02d05efd9", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 8786745, "upload_time": "2019-04-04T15:31:02", "url": "https://files.pythonhosted.org/packages/95/33/ccab877191ccdf155af377fe285546eb84bff365f91dc469597a96d9b12b/cugraph-0.6.0-cp36-cp36m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "056daf7e253a7d90ee71852df5add21c", "sha256": "c3af30c43abd6cfe53502d1269aaa91a23766981f5c321e6c5dcbd94b1444f41" }, "downloads": -1, "filename": "cugraph-0.6.0-cp37-cp37m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "056daf7e253a7d90ee71852df5add21c", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": null, "size": 8786665, "upload_time": "2019-04-04T15:31:06", "url": "https://files.pythonhosted.org/packages/46/3f/7cf0955a8124973e27c2848367e7428d28a1de007232a60b36d9c64a910c/cugraph-0.6.0-cp37-cp37m-manylinux1_x86_64.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "92282793d502051b99af0dd02d05efd9", "sha256": "d0fb283c2d5424e8d49234fbc53e3cfcae541a20120cacfd02464686f97b07aa" }, "downloads": -1, "filename": "cugraph-0.6.0-cp36-cp36m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "92282793d502051b99af0dd02d05efd9", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 8786745, "upload_time": "2019-04-04T15:31:02", "url": "https://files.pythonhosted.org/packages/95/33/ccab877191ccdf155af377fe285546eb84bff365f91dc469597a96d9b12b/cugraph-0.6.0-cp36-cp36m-manylinux1_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "056daf7e253a7d90ee71852df5add21c", "sha256": "c3af30c43abd6cfe53502d1269aaa91a23766981f5c321e6c5dcbd94b1444f41" }, "downloads": -1, "filename": "cugraph-0.6.0-cp37-cp37m-manylinux1_x86_64.whl", "has_sig": false, "md5_digest": "056daf7e253a7d90ee71852df5add21c", "packagetype": "bdist_wheel", "python_version": "cp37", "requires_python": null, "size": 8786665, "upload_time": "2019-04-04T15:31:06", "url": "https://files.pythonhosted.org/packages/46/3f/7cf0955a8124973e27c2848367e7428d28a1de007232a60b36d9c64a910c/cugraph-0.6.0-cp37-cp37m-manylinux1_x86_64.whl" } ] }