Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to Generate librmm.so #1781

Closed
ZiqiFrancisFan opened this issue Jan 9, 2025 · 5 comments
Closed

How to Generate librmm.so #1781

ZiqiFrancisFan opened this issue Jan 9, 2025 · 5 comments
Labels
question Further information is requested

Comments

@ZiqiFrancisFan
Copy link

I followed the steps to build rmm from source code. However, I didn't get librmm.so as expected under build folder. Where can I find it after building?

@ZiqiFrancisFan ZiqiFrancisFan added ? - Needs Triage Need team to review and classify question Further information is requested labels Jan 9, 2025
@harrism
Copy link
Member

harrism commented Jan 9, 2025

Currently, RMM is a header-only library. So when you build RMM, what you are building is (in the case of C++) just unit tests. For RMM Python, the build does create a binary library for the Python bindings of the C++ library.

@bdice
Copy link
Contributor

bdice commented Jan 9, 2025

As of #1779 we are considering making RMM a shared library rather than header-only. Mark’s comments are correct about the current state of things.

@ZiqiFrancisFan
Copy link
Author

ZiqiFrancisFan commented Jan 9, 2025

What is the correct way of inclusion to make c++ compilation work? I got the following piece of simple code for compiling with nsys:

#include <gtest/gtest.h>
#include <rmm/mr/device/device_memory_resource.hpp>

TEST(RMM, profile)
{

}

It complained about the following:

/usr/bin/g++ -Wall -pthread -std=c++14 -I/usr/local/cuda/include -Isrc -I/home/myuser/include -I/usr/local/include -o bin/test.o -c src/test.cpp
In file included from src/test.cpp:4:
/home/myuser/include/rmm/mr/device/device_memory_resource.hpp:312:65: error: 'cuda::mr' has not been declared
312 | friend void get_property(device_memory_resource const&, cuda::mr::device_accessible) noexcept {}
| ^~
/home/myuser/include/rmm/mr/device/device_memory_resource.hpp:361:21: error: 'cuda::mr' has not been declared
361 | static_assert(cuda::mr::async_resource_with<device_memory_resource, cuda::mr::device_accessible>);
| ^~
/home/myuser/include/rmm/mr/device/device_memory_resource.hpp:361:67: error: expected primary-expression before ',' token
361 | static_assert(cuda::mr::async_resource_with<device_memory_resource, cuda::mr::device_accessible>);
| ^
/home/myuser/include/rmm/mr/device/device_memory_resource.hpp:361:69: error: expected string-literal before 'cuda'
361 | static_assert(cuda::mr::async_resource_with<device_memory_resource, cuda::mr::device_accessible>);
| ^~~~
/home/myuser/include/rmm/mr/device/device_memory_resource.hpp:361:68: error: expected ')' before 'cuda'
361 | static_assert(cuda::mr::async_resource_with<device_memory_resource, cuda::mr::device_accessible>);

My container uses cuda 12.5.1.

@harrism
Copy link
Member

harrism commented Jan 11, 2025

Please define LIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE. See #1783

@bdice bdice removed the ? - Needs Triage Need team to review and classify label Jan 16, 2025
@bdice
Copy link
Contributor

bdice commented Jan 16, 2025

Marking this as complete for now -- please feel free to follow up and re-open if you have more questions!

@bdice bdice closed this as completed Jan 16, 2025
@github-project-automation github-project-automation bot moved this from To-do to Done in RMM Project Board Jan 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
Status: Done
Development

No branches or pull requests

3 participants