You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
That's too strong of a requirement. It's enough for us that the CUDA driver be able to copy the representation bytes of the class/struct, and construct a representation on the GPU using those bytes. The existence of other operators and ctors is inconsequential (well, I think so, any way). So, let's weaken the use std::is_trivially_copyable to std::is_trivially_copy_cosntructible.
The text was updated successfully, but these errors were encountered:
eyalroz
changed the title
std::trivially-copyable requirement for kernel arguments too strong
std::trivially-copyable requirement for kernel parameters too strong
Apr 21, 2022
We currently require all (decayed types of) parameters to kernel functions satisfy the TriviallyCopyable C++ named set of requirements:
That's too strong of a requirement. It's enough for us that the CUDA driver be able to copy the representation bytes of the class/struct, and construct a representation on the GPU using those bytes. The existence of other operators and ctors is inconsequential (well, I think so, any way). So, let's weaken the use
std::is_trivially_copyable
tostd::is_trivially_copy_cosntructible
.The text was updated successfully, but these errors were encountered: