2015-10-03 5 views
3

я скомпилировать Ipopt с openblas используя связь: ./configure --with-blas-incdir="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/include/" --with-blas-lib="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/lib/ -libopenblas_sandybridgep-r0.2.14.a"Ссылка на openblas; Нужен ли мне еще Lapack?

Если я не определить какой-либо конкретной библиотеки LAPACK, Ipopt автоматически использует LAPACK из Netlib. Имеется ли openplas с собственной оптимизированной реализацией LAPACK?

Если я использую --with-lapack-incdir="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/include/" --with-lapack-lib="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/lib/"

делают не удается, потому что некоторые процедуры LaPack не могут быть решены например undefined reference to dpotrs_ At least there is the file lapacke.h in the включают folder but there are not LAPACK libraries in the папку lib`.

Я нашел это issue на GitHub заявив:

Хорошо, я думаю, что я понял это ... Вы можете сделать OpenBLAS построить без учета LAPACK в нем, по> с указанием NO_LAPACK = 1 на марке командная строка. По умолчанию он включает в себя полную библиотеку LAPACK (с некоторыми оптимизированными деталями).

Но если это так, то где есть библиотеки?

Должен ли я компилировать LAPACK против openblas?

Я был бы очень признателен, если бы кто-то мог пролить свет на эту проблему.

ответ

0

На changelog.txt в папке OpenBLAS, он сказал

* Patched LAPACK to fix bug 114, 117, 118. 
    (http://www.netlib.org/lapack/bug_list.html) 

Также проверьте расположение исходного кода в this page и this page сказал: "OpenBLAS реализует оптимизированные версии некоторых функций LAPACK"

Исходя из этого, я думаю, что OpenBLAS загружает Lapack из netlib, а затем оптимизирует некоторые из них. Можете ли вы найти альтернативу?

BTW, LAPACK требуется только в том случае, если вы намерены использовать опции квази-Ньютона в Ipopt

Смежные вопросы