rapidsai / build-planning

Tracking for RAPIDS-wide build tasks
https://github.com/rapidsai
0 stars 4 forks source link

Upgrade RAPIDS to building with C++20 #113

Open vyasr opened 4 weeks ago

vyasr commented 4 weeks ago

RAPIDS updated to C++17 a little over three years ago (here's cudf's). Since C++ standards are released every three years, we ought to be about on track to consider upgrading our builds to use C++20. C++20 is a pretty huge release with a lot of major new features like modules, concepts, and ranges, all of which we could make good use of in RAPIDS. Compiler support is tracked here. It seems like gcc has near-complete support for C++20 now (modules are still partial) so that shouldn't be a bottleneck any more.

vyasr commented 4 weeks ago

CC @robertmaynard (not at all urgent, just figured you'd have thoughts)

robertmaynard commented 4 weeks ago

I fully support switching over to C++20 once we drop CUDA 11.X support. Currently nvcc 11.8 only supports up to C++17.

As for the components of C++20 that we can leverage in RAPIDS, I think the only exception will be modules, as nvcc doesn't support them

vyasr commented 4 weeks ago

Got it, so this is blocked on dropping CUDA 11.