ashvardanian/less_slow.cpp

Add cuGraph examples

Opened this issue ยท 10 comments

We currently have a pretty extensive list of graph storage and processing approaches on the CPU, but lack GPU analogs. This can be a great opportunity to showcase both the more advanced and rarely used parts of the Nvidia libraries, as well as explore atomic variables and concurrent data-structure implementations on massively parallel chip architectures.

This is also worth covering on the Python side with the available Python cuGraph bindings:

I can get started on this, can you elaborate on what you'd like to see as well as where in the project structure this should be placed?

The cuGraph invocations should go into less_slow.cu, while the benchmark logic should go after the CPU-side Graph-related benchmarks in less_slow.cpp.

Nice, I think you might have to assign the issue to me and I'll get started. I'll ask any questions in here along the way

Done! Looking forward to your PR @syedshazli!

Hi Ash, thanks for assigning me the issue. I've worked with Google benchmark in the past, but I was trying to use cmake as described in the README. Was wondering if you had anything like this message pop up before? I think my current version of Cmake (3.22) won't allow me to run the commands which require Cmake 3.25. When I try to upgrade versions, I get this.

Image

@syedshazli , you can fetch a newer CMake from PyPi ๐Ÿค—

Hi Ash, I'm currently a University student having finals and projects due this week and next week, so I won't be able to set aside much time until next Friday. If you want to assign this PR to someone else or work on it yourself, feel free,if not then I can get started next week. Sorry for the inconvenience

No rush! Best of luck with exams! Submit a PR whenever ready, @syedshazli ๐Ÿค—

Thank you!

Hey Ash, I really like the way the repo is right now, but to be honest I've never used CUDA which is why I'm learning CUDA C right now. Sicne it might take some time to get the basics of CUDA down, I'm not sure how much help I can be when referencing Cugraph. This repo seeks to get the most efficient C++/Cuda code out there, and I don't know if I can writie it given I don't have the basics of it down yet.

So far reading the Cuda_by_example pdf out there by Nvidia.