Skip to content

[BUG]: cuda::warp_match_all is not reliable when the input has padding #6085

@fbusato

Description

@fbusato

Is this a duplicate?

Type of Bug

Silent Failure

Component

libcu++

Describe the bug

cuda::warp_match_all is a generalization of the __match_all_sync intrinsic. The function relies on bitwise comparison for any type.
If a type has padding, the functionality has undefined behavior. Even if the documentation highlights the problem, the functionality is bug-prone.

possible solutions:

  1. Wait until the compiler/nvvm provides a way to detect padding of a type. It could take long time and the function is easy to misused in the meanwhile.
  2. Deprecate / mark = delete. Short-term solution (preferred).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No fields configured for Bug.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions