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

[BUG] Investigate compile time of stand-alone header include of ivf_flat, ivf_pq, and refine headers #1465

Open
ahendriksen opened this issue Apr 26, 2023 · 0 comments
Labels
bug Something isn't working Build Time Improvement

Comments

@ahendriksen
Copy link
Contributor

Describe the bug
Surfaced in PR #1437, discussion here.

A single file containing

#include <raft/neighbors/ivf_flat.cuh> // or:
#include <raft/neighbors/ivf_pq.cuh> // , or:
#include <raft/neighbors/refine.cuh>

takes ~2 minutes to compile.

Steps/Code to reproduce bug

The following tests should be cheap to compile, because they do not instantiate any templates. I checked the build metrics report at https://downloads.rapids.ai/ci/raft/pull-request/1439/b0b8fe5/cuda11_x86_64.tests_bench_prims.html. Surprisingly, some of the files are expensive to compile:

CMakeFiles/EXT_HEADERS_TEST_IMPLICIT.dir/test/ext_headers/raft_neighbors_ivf_pq.cu.o            2:21 min
CMakeFiles/EXT_HEADERS_TEST_COMPILED_IMPLICIT.dir/test/ext_headers/raft_neighbors_ivf_pq.cu.o   2:20 min
CMakeFiles/EXT_HEADERS_TEST_COMPILED_IMPLICIT.dir/test/ext_headers/raft_neighbors_ivf_flat.cu.o 2:10 min
CMakeFiles/EXT_HEADERS_TEST_IMPLICIT.dir/test/ext_headers/raft_neighbors_ivf_flat.cu.o          2:07 min
CMakeFiles/EXT_HEADERS_TEST_IMPLICIT.dir/test/ext_headers/raft_neighbors_refine.cu.o            2:04 min
CMakeFiles/EXT_HEADERS_TEST_COMPILED_IMPLICIT.dir/test/ext_headers/raft_neighbors_refine.cu.o   2:03 min

Expected behavior
Should compile in <20 seconds.

Additional context
Surfaced in PR #1437, discussion here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Build Time Improvement
Projects
Status: No status
Development

No branches or pull requests

1 participant