Repair support for no-byte-addressable OpenCL devices
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 13.6k
- Forks
- 2.6k
- PR merge metrics
- No merged PRs in 30d
Description
Hello, I am posting this here and not at the mailing list because I think this can be a bug. I used the command suggested by @solardiz john 343.in --format=wpapsk-openc, I get the following (I am copying from my cmd window as much as allowed as there are lines of text before this which are not showing, probably because there are too many lines in total):
"kernels\opencl_sha2_ctx.h", line 179: error: write to < 32 bits via pointer
not allowed unless cl_khr_byte_addressable_store is enabled
PUT_UINT32BE(ctx->state[5], output, 20);
^
Edit by @solardiz: many occurrences of the above dropped.
Error limit reached.
100 errors detected in the compilation of ".\OCL9868.tmp.cl".
Compilation terminated.
Internal error: clc compiler invocation failed.
Error building kernel kernels/wpapsk_kernel.cl. DEVICE_INFO=4194826
0: OpenCL CL_BUILD_PROGRAM_FAILURE (-11) error in opencl_common.c:1386 - clBuild
Program
C:\john\run>
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the command shown in the report and inspect kernels/opencl_sha2_ctx.h, kernels/wpapsk_kernel.cl, and opencl_common.c around line 1386. Trace the repeated byte-addressable-store compilation errors, then verify that the affected OpenCL kernel builds and runs on devices without that extension.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- hpc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100