Make all algorithms in cuda/std/algorithm available through cuda/std/algorithm.meow#7935
Make all algorithms in cuda/std/algorithm available through cuda/std/algorithm.meow#7935miscco wants to merge 3 commits intoNVIDIA:mainfrom
cuda/std/algorithm available through cuda/std/algorithm.meow#7935Conversation
|
I am proposing to keep the current folder structure intact and For me this greatly improves maintainability of our code base. Otherwise there are 500+ files in |
cabe671 to
d7051d6
Compare
This comment has been minimized.
This comment has been minimized.
d7051d6 to
b0a1755
Compare
This comment has been minimized.
This comment has been minimized.
b0a1755 to
c8dd140
Compare
c8dd140 to
36bc8b6
Compare
| "search.exclude": { | ||
| "**/include/cuda/*.*": true, | ||
| "**/include/cuda/std/*.*": true | ||
| } |
There was a problem hiding this comment.
Note this one here might be a tad dangerous, it also removes the files for search paths in the VS-code IDE
We might want to drop that
There was a problem hiding this comment.
Can you elaborate on this? What was this added for?
There was a problem hiding this comment.
These additional files add a considerable maintenance burden on the cuda/std folder.
What is now relatively well contained will contain a few hundred headers soon. vs-code and other IDEs offer exclude files, where one can hide those files.
vs-code in particular has 2 options
- hide files from explorer view
- hide files from search view -> searching in the repository will not show those files
This comment has been minimized.
This comment has been minimized.
I don't think symlinks work on Windows, do they? |
|
Given this is a pretty extensive product facing change, I'd like more thoughts from @wmaxey @griwes @gevtushenko @brycelelbach @ericniebler |
They dont, moved to forwarding headers |
😬 CI Workflow Results🟥 Finished in 1h 23m: Pass: 99%/453 | Total: 4d 05h | Max: 55m 56s | Hits: 99%/515395See results here. |
jrhemstad
left a comment
There was a problem hiding this comment.
Some questions I'd like answered before we merge this:
- How will we test this? I think we should have tests that include each micro-header and ensure that was is supposed to be available in that header is indeed available.
- How will we document this?
- I'd like to see an evaluation of how well this naming pattern will extend to other headers
We had a poll to see how users would like to access individual features of umbrella headers like
<cuda/std/algorithm>The vast majority preferred a pattern like
<cuda/std/algorithms/find.h>However, we can get away with finding a similar but different name if we use the pattern
umbrella_header.featureWe can create a wrapper for the internal file and also instruct our IDE to ignore all files that match the pattern
[a-z_]*\.[a-z_]*This works because we do not have any.hfiles in neither<cuda/>not<cuda/std/>