You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
gemm_batch and possibly other batch methods do not allow const Ts* types for the alpha and beta scaling parameters. I believe this should be the case as it is documented within the oneMKL spec. I also believe this to be a reasonable parameter argument as alpha and beta are read only data types and therefore should not be modified. My reference: https://www.intel.com/content/www/us/en/docs/onemkl/developer-reference-dpcpp/2023-0/gemm-batch.html
oneMKL works with multiple HW and backend libraries and also depends on the
compiler and build environment. Include
the following information to help reproduce the issue:
HW: A100 GPU
Backend: cuBlas
OS: Ubuntu 20.04
Compiler version: DPC++ 2024.0.2
Steps to reproduce
Compile with for NVidia GPUs: icpx -fsycl -fsycl-targets=nvptx64-nvidia-cuda reproducer_onemkl_batch.cpp -lonemkl
or for Intel GPUs: icpx -fsycl reproducer_onemkl_batch.cpp -lonemkl
@AidanBeltonS This looks like a real gap. Thanks for reporting this. We will take a look. For non-array parameters, we typically don't use const since they are passed by value. For this particular case, we are looking at gemm_batch GROUP API where all parameters are arrays passed with const
Summary
gemm_batch and possibly other batch methods do not allow
const Ts*
types for thealpha
andbeta
scaling parameters. I believe this should be the case as it is documented within the oneMKL spec. I also believe this to be a reasonable parameter argument as alpha and beta are read only data types and therefore should not be modified. My reference: https://www.intel.com/content/www/us/en/docs/onemkl/developer-reference-dpcpp/2023-0/gemm-batch.htmlVersion
oneMKL hash: 7d2044e
Environment
oneMKL works with multiple HW and backend libraries and also depends on the
compiler and build environment. Include
the following information to help reproduce the issue:
Steps to reproduce
Compile with for NVidia GPUs:
icpx -fsycl -fsycl-targets=nvptx64-nvidia-cuda reproducer_onemkl_batch.cpp -lonemkl
or for Intel GPUs:
icpx -fsycl reproducer_onemkl_batch.cpp -lonemkl
Error:
I would expect this to compile based upon the documentation linked and the fact the parameter is read only
The text was updated successfully, but these errors were encountered: