boostorg / boostorg/compute

Algorithms do not heed the maximum work-group size of the device

Open
#740 0 comments 1 reaction 0 assignees View on GitHub
bug help wanted
Dominant language
C++
Stars
1.7k
Forks
340
PR merge metrics
No merged PRs in 30d

Description

Almost all algorithms in boost compute, which set an explicit local work-group size do not check if this size exceeds the device maximum work-group size. Instead they all set it to a default value of 128 (e.g. `algorithm/detail/binary_find.hpp` in line 82).

Thus, most of the algorithms and therefore the Boost.Compute test-cases fail for OpenCL devices with a maximum work-group size of less then 128.

So, the default value should be checked against the device's maximum work-group size, which already can be retrieved via `boost::compute::device::max_work_group_size()`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.