KhronosGroup / KhronosGroup/OpenCL-ICD-Loader
Could ICD read *.icd64 files while the loader is a 64-bit program?
- Dominant language
- C
- Stars
- 304
- Forks
- 171
- Avg merge
- 11h 30m
- Merged PRs (30d)
- 1
Description
For example for android, build the 32-bit loader which might be:
`/system/vendor/lib/libOpenCL.so`
and read .icd files in path:
`/system/vendor/Khronos/OpenCL/vendors/vendor*.icd`
The file vendor*.icd may contain contents like:
`/system/vendor/lib/egl/libXXX_vendor.so`
also, build 64-bit loader which might be:
`/system/vendor/lib64/libOpenCL.so`
and read .icd64 files in path:
`/system/vendor/Khronos/OpenCL/vendors/vendor*.icd64`
The file vendor*.icd64 may contain contents like:
`/system/vendor/lib64/egl/libXXX_vendor.so`
Currently I put both 32-bit and 64-bit OpenCL library path with .icd suffix, resulting in that 32-bit programs use 32-bit loader failed to load 64-bit CL library, but the loader always need to try(though each process only try once, I think it should be avoid). And as for 64-bit programs, 64-bit loader also tries to load 32-bit CL library even if it's useless.
thanks!
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the loader's Android handling for /system/vendor/Khronos/OpenCL/vendors and the 32-bit and 64-bit library paths described in the issue. Define completion as 32-bit loaders considering .icd files and 64-bit loaders considering .icd64 files, without attempting incompatible libraries; add or run coverage for both cases if the repository provides a relevant loader test.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, c
- Domain
- mobile, operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100