Чи є якась користь від компіляції LAPACK з джерела порівняно з встановленням попередньо вбудованого пакету від Ubuntu?


13

Я знаю, що ATLAS здатний оптимізувати себе для машини, на якій вона компілюється, і, таким чином, максимальні переваги знаходять, компілюючи з джерела. Чи є якась користь від компіляції LAPACK з джерела? Набагато простіше було б просто встановити попередньо вбудований пакет.


Можливо, варто спробувати цю техніку, щоб побачити, чому саме витрачається час. Я виявив, що якщо я багато працюю з не великими матрицями, підпрограми бібліотеки витрачають більше половини свого часу, класифікуючи свої вхідні символи та інші класифікації вводу, тож ви можете отримати велику швидкість, збільшивши бібліотеку з кількома добре підібраними ручними програмами.
Майк Данлаве

Відповіді:


9

OpenBlas досить швидкий, тому ви можете пов’язати його з LAPACK. Ви спробували попередньо складену версію LAPACK / BLAS від свого постачальника процесорів? Наприклад, AMD ACML (безкоштовно) або Intel MKL (безкоштовно в Linux для некомерційного та неакадемічного використання)? Вам просто потрібно розпакувати та запустити інсталяційний файл.

На мою думку, єдиною перевагою використання ATLAS є використання незвичайних процесорів. В іншому випадку використовуйте той у постачальника процесора. Також доступні версії nVIDIA CUDA та AMD OpenCL, які справді гойдаються.

EDIT: пам’ятайте, що ви завжди можете створити пакет Ubuntu DEB з джерела, що зазвичай набагато простіше, ніж компілювати програмне забезпечення з джерела.


Я думаю, я піду з вашою пропозицією та встановіть MKL. Також дякую за пораду щодо створення пакетів DEB, я не знав, що це можливо.
OSE

2
Пам’ятайте, що вам потрібно налаштувати ld (динамічний лінкер бібліотек, щоб мати змогу знайти ці файли). BLAS та LAPACK від Intel MKL є у libmkl_rt.soфайлі, який зазвичай пов'язують, використовуючи:-L/opt/intel/mkl/lib/intel64 -lmkl_rt
Misery

2
Слід зазначити, що некомерційна ліцензія Intel з кожним випуском стає все більш обмежуючою, до того моменту, коли вони дуже чітко пояснюють те, що академічне використання не покривається ним, як тільки ви отримуєте гроші на свої дослідження.
Крістіан Класон

Та ще, що варто згадати. Однак можна протестувати це безкоштовно:] І якщо це виявиться корисним, це не найдорожча річ у світі.
бід

7

Пакет сховища не є безпечним для використання з потоком через спосіб його складання. Я повідомив про помилку на форумі Lapack , але пройде багато часу, щоб вирішити способи вирішення чи вирішення проблем у сховище. Якщо ви складете його самостійно, не забудьте додати «gfrankv» до gfortran.


6

На мій досвід, найкращий спосіб використання blas / lapack в останніх версіях ubuntu - це використання упакованих openblas.

Для чого це варто, я здебільшого використовую blas / lapack через python numpy / scipy, а використання openblas прискорює деяку лінійну алгебру на зразок 200x проти типового. Я намагався використовувати користувальницький ATLAS, але це був величезний біль і не давав багато, якщо якісь прискорення порівняно з openblas, але я, можливо, робив це неправильно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.