Artem-B wrote:

I think we're more or less on the same page. I'm all for making docs useful, 
and view "docs are spotty as-is" to be an argument for  doing a better job.

> Clang CUDA implementation is far enough from compatible with the NVIDIA CUDA 
> that the CUDA programing manual

We're largely compatible semantically, but not in the detail of the 
implementation. While some implementation differences are observable, most of 
the existing CUDA code compiles and works with both NVCC and Clang with little 
or no changes. CUDA programming manual is still *the* reference manual, even if 
it could benefit from a chapter on portability across NVCC and Clang.

> So a short-description + link WOULD be fine, but the 'established 
> nomenclature' doesn't help the above particularly well.

"established nomenclature" may not have been the best term for me to use. What 
I meant is not just "we've been calling them that way forever" but that CUDA 
attributes are actually part of the CUDA language extension (extras on top of 
C++). Those attributes are closer to a keyword than an attribute, as they have 
much more influence on what compiler does with the code. That often makes it 
rather hard to concisely explain the purpose. E.g. explaining C++'s `virtual` 
in two lines may be a bit of a challenge, unless the reader is familiar with 
OOP/classes and inheritance. CUDA's attributes are roughly in the same ballpark 
-- hard to explain them unless the reader is familiar with how CUDA works, and, 
in this case, with additional nuances of the recent GPUs.

So a short description + link to the docs looks like a reasonable compromise 
suitable for giving a rough idea at a glance, and for providing a direct 
pointer to the gory details, if needed.

> My problem with how it reads now: to someone with no CUDA knowledge, this 
> reads as if a Markov model went haywire, and just uses a bunch of words that 
> don't really mean anything (again, unless you already KNOW CUDA, at which 
> point: why are you needing this doc?).

That may indeed be the case. The verbatim wording should be reasonably 
meaningful for everyone.




https://github.com/llvm/llvm-project/pull/156686
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to