더 빠른 과학적 계산을 위해 Ubuntu 리포지토리의 Intel MKL과 함께 GNU Octave를 사용하는 방법은 무엇입니까?

더 빠른 과학적 계산을 위해 Ubuntu 리포지토리의 Intel MKL과 함께 GNU Octave를 사용하는 방법은 무엇입니까?

인텔 수학 커널 라이브러리는 다음에서 사용할 수 있는 BLAS 라이브러리입니다.우분투 저장소Ubuntu 19.10부터 훨씬 더 빠른 결과를 제공하는 것으로 보고되었습니다.

GNU Octave가 리포지토리에서 설치된 인텔 MKL을 사용하도록 만드는 방법은 무엇입니까?

답변1

Octave를 설치해야합니다

sudo apt-get install octave

그런 다음 전체 인텔 MKL 개발 패키지를 설치하십시오.

sudo apt-get install libmkl-full-dev

설치 중에 Intel MKL을 기본 수학 라이브러리 공급자로 선택해야 합니다.

중요한:
피하려면Octave와 MKL 사이의 버그~/.bashrcor 에 다음 변수 선언을 추가해야 합니다 ~/.profile.

export MKL_THREADING_LAYER=gnu

그리고 옥타브를 실행하세요.

버그의 최근 의견에서 언급했듯이 Octave는 __run_test_suite__이 해결 방법을 적용한 후에도 실행 시 분할 오류로 닫힙니다. 현재는 그렇습니다권장하지 않음MKL과 함께 Ubuntu 저장소의 Octave 버전을 사용합니다.


MKL이 사용되었는지 확인하려면 htop아래 나열된 라이브러리( F4,octave, 선택하다octave-gui, L, F4,mkl):

mkl 라이브러리가 나열됩니다.


아래 코드를 사용하여 벤치마크

c = sin((1:500)' + (1:500).^2);

tic;
g = eig(c);
toc
m = max(real(g))
assert (m, 16.914886, 1e-6)

Intel i7-3537U 사용:

  • 기본값 - 0.46초;
  • MKL - 0.14초

관련 정보