Comment 0 for bug 1816887

Revision history for this message
Marco van Zwetselaar (zwets) wrote :

Executing any of the clblas.gemm functions in libclBLAS.so.2.12.0 (libclblas2 2.12-1build1 on bionic) aborts the calling program with this error message:

OpenCL error -11 [...] clblas-2.12/src/library/blas/xgemm.cc:244: void makeGemmKernel(_cl_kernel**, cl_command_queue, const char*, const char*, const unsigned char**, size_t*, const char*): Assertion `false' failed.

The error occurs when the backend is an OpenCL 1.1 device. This includes all GPUs supported by libclc through mesa-opencl-icd (Clover), that is effectively all AMD GPUs.

The error can be easily reproduced by running the example from the upstream README.md[1] on a machine with an AMD GPU, with environment entry OCL_ICD_VENDORS set to mesa.icd.

This bug also affects all BLAS functionality in libarrayfire-opencl3, as can be seen by running e.g. examples/benchmarks/blas or any of the lin_algebra examples from the libarrayfire-doc package.

The good news is, the fix is simple. I have submitted this PR[2] upstream, and am attaching a dquilt-ready patch as upstream releases (and even pulls to master) are very infrequent.

[1] https://github.com/clMathLibraries/clBLAS#example
[2] https://github.com/clMathLibraries/clBLAS/pull/342