The problem of 'conv2' with 'BLAS loading error.

5 次查看(过去 30 天)
When I using a compilied matconvnet to apply 'conv2(a, h, 'valid')', a 'BLAS loading error' occurs if the first dimension of 'a' is larger than 16.
If the first dimension of 'a' is less than 16, it works.
  3 个评论
Chang
Chang 2021-11-12
Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-38-generic x86_64)
CPU: Hygon C86 7151 16-core Processor
GPU: NVIDIA RTX A5000
Image Analyst
Image Analyst 2021-11-12
Works for me
out = conv2(rand(16, 1), rand(1,1))
out = conv2(rand(17, 1), rand(1,1))
The above code runs with no error. Does it only happen if you've compiled the code? Like into a standalone executable?
I don't know what a "matconvnet" is. What is that?

请先登录,再进行评论。

采纳的回答

Heiko Weichelt
Heiko Weichelt 2021-11-12
The problem occurs from the fact that this particular processor is not correctly detected by MATLAB, and hence, not the right BLAS and LAPACK library gets loaded.
This is a bug and we are already working on fixing that for the future.
A workaround you can try consists of telling MATLAB explicitly which BLAS/LAPACK library to use.
Your MATLAB installation should contain the BLAS/LAPACK library mkl.so for glnxa64 systems. Please locate the installation path by running the following inside MATLAB:
>> matlabroot
ans =
/some/path/to/MATLAB
Use this path to set the following two environment variables before starting MATLAB:
BLAS_VERSION = /some/path/to/MATLAB/glnxa64/bin/mkl.so
LAPACK_VERSION = /some/path/to/MATLAB/glnxa64/bin/mkl.so
It depends on the console you're using in Ubuntu on how to set those variables. If you are using 'bash', e.g., it would look as following:
$ export BLAS_VERSION=/some/path/to/MATLAB/glnxa64/bin/mkl.so
$ export LAPACK_VERSION=/some/path/to/MATLAB/glnxa64/bin/mkl.so
Other consoles have similar syntaxes.
Once those variables are set, start MATLAB from the same console. Afterwards, you can verify that MKL was loaded correctly by running the following inside MATLAB:
>> version -blas
>> version -lapack
If both comments return the MKL version of your MATLAB version, you should all be set and your initial computation should work as expected.
If this does not work, please get in touch via Customer Support so we can discuss further steps more directly.
Please notice that MathWorks has not qualified MATLAB on this particular platform and, hence, cannot guarantee anything.
  1 个评论
Chang
Chang 2021-11-15
Thank you very much!
According to the solution you provided, the problem has been solved!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by