Investigate creation of reinterpret_view cccl_iterator_t with type CCCL_POINTER in cuda.parallel
Open
- Dominant language
- C++
- Stars
- 2.5k
- Forks
- 486
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 295
Description
Consider this issue in context of problem to transform RGB image to Grayscale image.
Solving it using cccl/c/parallel library involves ``cub::DeviceTransform`` to transform an array of `float` triplets to an array `float` values.
In Python, `cccl.parallel.experimental.algorithms.unary_transform` can be used. See https://gist.github.com/oleksandr-pavlyk/5bc2ebf62e15598fcae0cb98b65e38b0
It would be nice if one could just tell cuda.parallel to reinterpret CuPy array of shape `(n, 3)` as vector of `n` Pixel structs.
For efficiency purposes, the resulting reinterpreted structure must translate to `cccl_iterator_t` with type `CCCL_POINTER`.
Contributor guide
Assessment
This issue has not been assessed yet.