cudamulti-gpurapids

cuGraph on Multi-GPU


Recently, I am reading the code of cuGraph. I notice that it is mentioned that Louvain and Katz algorithms support multi-GPU. However, when I read the C++ code of Louvain, I cannot find code that is related to multi-GPU. Specifically, according to a prior post, multi-GPU can be implemented by calling cudaSetDevice. I cannot find this function in the code of Louvain, however. Am I missing anything?


Solution

  • cuGraph supports multi-GPU by leveraging Dask. I encourage you to read the Dask cuGraph documentation that shows an example using PageRank.

    For a Louvain example, I recommend looking at the docstring of the cugraph.dask.louvain function.

    For completeness, under the hood cuGraph is using RAFT to manage underlying NCCL and UCX communication.