rapidsai / rmm

RAPIDS Memory Manager
https://docs.rapids.ai/api/rmm/stable/
Apache License 2.0
445 stars 187 forks source link

[DOC] Add documentation for usage with CPM #1594

Open pauleonix opened 1 week ago

pauleonix commented 1 week ago

Report needed documentation

Report needed documentation As a header-only library RMM is a prime candidate for usage with the CMake Package Manager (CPM). CPM includes headers as system headers by default when using the short-hand notation (https://github.com/cpm-cmake/CPM.cmake/pull/449):

CPMAddPackage("gh:rapidsai/rmm@24.06.00")

While this is not problematic for the RMM headers themselves (as far as I know), the SYSTEM property seems to be added to CCCL as well which causes it to be of lower priority than the version of CCCL included with the CUDA SDK which in turn can cause compilation errors (See this remark in the CCCL README.md). What works is to use the full notation (which annoyingly has the opposite default concerning SYSTEM):

CPMAddPackage(
  NAME rmm
  VERSION 24.06.00
  GITHUB_REPOSITORY rapidsai/rmm
)

CCCL could also do better about documenting this issue (I plan to write an issue there next), but at least they use the full notation in their example.

Steps taken to search for needed documentation Read the README.md

harrism commented 4 days ago

Hi @pauleonix thanks for reporting this. We would welcome a PR if you are interested in submitting one.