Replies: 6 comments 10 replies
-
Thanks a lot, that is a very good question. Will discuss this in the coming week in the internal meeting. I need to have a look at our fancy iterator implementation though, because it is a bit dated |
Beta Was this translation helpful? Give feedback.
-
On my part, I definitely want to help resolve this, so please feel free to contact me if you want to discuss ideas which involve changes on both "sides", i.e. in my wrappers as well. My GitHub profile has my email, for coordinating something like that. |
Beta Was this translation helpful? Give feedback.
-
The relevant section of the Programming Guide says:
|
Beta Was this translation helpful? Give feedback.
-
That's what I meant by being not-trivially-copy-constructible "in fact, rather than just in principle"... |
Beta Was this translation helpful? Give feedback.
-
I have opened a PR that should address most of the fancy iterators bar |
Beta Was this translation helpful? Give feedback.
-
I am working on a existing CUDA C++ codebase that combines Thrust fancy iterators with eyalroz/cuda-api-wrappers. In recent versions these wrappers have started statically checking the (decayed) type of kernel arguments passed through it's API for
std::is_trivially_copyable
or even more recentlystd::is_trivially_copy_constructible
. Neither of these requirements is met by Thrust fancy iterators like even the most basicthrust::counting_iterator<int>
. As the two of us couldn't reach a conclusion or our own in eyalroz/cuda-api-wrappers#551, we decided to ask here if there is another option to check for correctness without compromising composability with Thrust fancy iterators.Beta Was this translation helpful? Give feedback.
All reactions