
Intel Math Kernel Library é uma biblioteca BLAS, que está disponível emRepositórios Ubuntudo Ubuntu 19.10 em diante e fornece resultados muito mais rápidos.
Como fazer o GNU Octave usar o Intel MKL instalado nos repositórios?
Responder1
Você tem que instalar o Octave com
sudo apt-get install octave
e, em seguida, instale o pacote de desenvolvimento Intel MKL completo com
sudo apt-get install libmkl-full-dev
durante a instalação, você deve selecionar Intel MKL como provedor de bibliotecas matemáticas padrão.
Importante:
Evitarbug entre Octave e MKLdeve-se adicionar a seguinte declaração de variável ao ~/.bashrc
ou ~/.profile
:
export MKL_THREADING_LAYER=gnu
e então inicie o Octave.
Conforme observado nos comentários recentes do bug, o Octave fecha com falha de segmentação quando __run_test_suite__
é executado, mesmo após aplicar esta solução alternativa. No momento énão recomendadopara usar a versão do Octave dos repositórios do Ubuntu junto com o MKL.
Para confirmar que MKL é usado, pode-se ver htop
a lista de bibliotecas abaixo ( F4,octave
, selecioneoctave-gui
, L, F4,mkl
):
Compare usando o código abaixo
c = sin((1:500)' + (1:500).^2);
tic;
g = eig(c);
toc
m = max(real(g))
assert (m, 16.914886, 1e-6)
Usando Intel i7-3537U:
- padrão - 0,46 s;
- MKL - 0,14 s.