NVIDIA / cccl

CUDA Core Compute Libraries
https://nvidia.github.io/cccl/
Other
1.28k stars 163 forks source link

[DOC]: Document relevant CCCL macros #2504

Open fbusato opened 1 month ago

fbusato commented 1 month ago

Is this a duplicate?

Is this for new documentation, or an update to existing docs?

New

Describe the incorrect/future/missing documentation

CCCL macros are very curated and are tested across many configurations in all projects that adopt CCCL. Some examples:

These macros can be documented and exposed to users

If this is a correction, please provide a link to the incorrect documentation. If this is a new documentation request, please link to where you have looked.

https://nvidia.github.io/cccl/libcudacxx/extended_api/macro.html

miscco commented 1 month ago

That is a hard no.

Exposing those macros to users prevents us from ever changing them again if need be. We recently spend a lot of time cleaning up our internal infrastructure and its been a pain to have to ensure backwards compatibility with publicly exposed Thrust and CUB macros.

fbusato commented 1 month ago

that's true, backwards compatibility is problematic. However, we should at least list these macros (or a subset of them) somewhere. As an external user, I would prefer taking the risk even if internal only instead of reimplementing many of them, at least initially...

miscco commented 1 month ago

That is not how it works. The moment we list something user will use that and complain if it fails.

jrhemstad commented 1 month ago

These macros should be documented in a Developer Guide. That is not the same as making them part of the public API.

bernhardmgruber commented 3 weeks ago

I agree with @jrhemstad. It would also help me as a CCCL developer to have a list of those macros in a guide intended only for CCCL developers.