Giter Club home page Giter Club logo

libcugraph-feedstock's People

Contributors

cf-blacksmithy avatar conda-forge-admin avatar jakirkham avatar leofang avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

libcugraph-feedstock's Issues

Archive this feedstock?

@rlratzel can correct me but my impression is that this feedstock is no longer needed by the cuGraph team to release conda packages. If this is the case, @jakirkham please advise for the steps.

Need an official release

Currently these two lines

channel_targets:
- conda-forge libcugraph_dev

make the package published under the libcugraph_dev label. This is for development/release candidates. However, I think v0.19.0 is just released, and we should have a separate branch for the official releases, otherwise we cannot do

conda install -c conda-forge libcugraph

@rlratzel Could you do two things for me please?

  1. Rename the current master to, say, rc so that it continues to publish packages under libcugraph_dev
  2. Create a new branch (master) without the libcugraph_dev label that publishes v0.19.0 and the future releases

This is blocking CuPy v9.0.0 (conda-forge/cupy-feedstock#123).

libcugraph leaks the RMM dependency to downstream

tl;dr: I don't think the current handling of downloading RMM as part of source code

# libcugraph depends on the RMM header-only library of the same version.
- url: https://github.com/rapidsai/rmm/archive/refs/tags/v{{ version }}.tar.gz
sha256: eddd5b35b016d665eb4e8ea2dd31497d913b3e1eb831124e4cb27cba747267a0
folder: rmm

is appropriate. RMM must be packaged as a Conda-Forge package so that libcugraph can depend on it, and downstream packages like CuPy can just depend on libcugraph without worrying about RMM.

From conda-forge/cupy-feedstock#123 (comment):

    building 'cupy_backends.cuda.libs.cugraph' extension
    /home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_build_env/bin/x86_64-conda-linux-gnu-cc -DNDEBUG -fwrapv -O2 -Wall -Wstrict-prototypes -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/cupy_1619157077988/work=/usr/local/src/conda/cupy-9.0.0 -fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh=/usr/local/src/conda-prefix -I/usr/local/cuda/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include -I/usr/local/cuda/include -fPIC -D_FORCE_INLINES=1 -DCUPY_CUB_VERSION_CODE=100910 -DCUPY_JITIFY_VERSION_CODE=-1 -I/usr/local/cuda/include/cub -I/tmp/pip-req-build-f19x1qnn/install/../cupy/_core/include -I/usr/local/cuda/include -I/home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include -I/home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include/cugraph -I/home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include/python3.6m -c cupy_backends/cuda/libs/cugraph.cpp -o build/temp.linux-x86_64-3.6/cupy_backends/cuda/libs/cugraph.o
    cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
    In file included from /home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include/cugraph/algorithms.hpp:18:0,
                     from cupy_backends/cuda/libs/../../cupy_cugraph.h:12,
                     from cupy_backends/cuda/libs/cugraph.cpp:677:
    /home/conda/feedstock_root/build_artifacts/cupy_1619157077988/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/include/cugraph/dendrogram.hpp:18:10: fatal error: rmm/device_uvector.hpp: No such file or directory
     #include <rmm/device_uvector.hpp>
              ^~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.

https://dev.azure.com/conda-forge/feedstock-builds/_build/results?buildId=307796&view=logs&j=7e9c1385-f003-5191-6e56-de8b58facc56&t=e14c8b26-d4de-545b-9aea-e32da246fb0e&l=4922

It shows RMM headers must be present when building applications depending on libcugraph. But, given that RMM must be pinned at the same version as libcugraph, it is impossible for downstream packages to handle this pinning, and instead libcugraph should do this via pin_compatible, which in turn requires RMM to be available as a standalone package.

cc: @kkraus14 @jakirkham @rlratzel

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.