Потратив огромное количество времени на сборку ATLAS из исходного кода, я обнаружил, что libopenblas и libatals в репозитории OpenSUSE 13.1. Мои вопросы
Действительно ли эта простая установка (без настройки на вашем собственном компьютере) «libatlas» в репозитории улучшает производительность вычислений?
Является ли OpenBLAS лучше, чем ATLAS, или только лучше, чем простая в установке «libatlas» в репозитории разновидности Linux? См. Для более быстрого R используйте вместо этого OpenBLAS: лучше, чем ATLAS, тривиально переключиться на Ubuntu.
Я следил за этим сообщением Компиляция Numpy с OpenBLAS, но не могу найти "numpy.core._dotblas" модуль. Более того, я не мог собрать Numpy с ATLAS и OpenBLAS одновременно.
Может ли кто-нибудь опубликовать файл .py или код bash для сравнения ATLAS и OpenBLAS? Например.
Я создал Numpy-1.9 с помощью собственного ATLAS, скомпилированного OpenBLAS из исходного кода и установил "libopenblaso" (версия OpenMP) и "libopenblasp" (версия pthreads) в репозиторий OpenSUSE 13.1. Как настроить ссылки и библиотеки, чтобы можно было указать Numpy-1.9 использовать OpenBLAS вместо ATLAS без пересборки пакета Numpy-1.9.
Примечание: Если вы устанавливаете "libatlas" в репозиторий, ATLAS не настроен для вашего компьютера и не может значительно повысить производительность вычислений. Поэтому я сначала построил и настроил ATLAS, а затем собрал Numpy со своим собственным ATLAS. После этого я попытался связать OpenBLAS с Numpy, но безуспешно.
Спасибо заранее!
Спасибо @Dmitry за быстрый ответ! Но вопросы не решены...
Установить
$ sudo zypper in libopenblasp0
The following NEW package is going to be installed:
libopenblasp0
1 new package to install.
Overall download size: 3.0 MiB. After the operation, additional 30.3 MiB will be used.
Continue? [y/n/? shows all options] (y):
Retrieving package libopenblasp0-0.2.11-11.1.x86_64 (1/1), 3.0 MiB ( 30.3 MiB unpacked)
Retrieving: libopenblasp0-0.2.11-11.1.x86_64.rpm ...........................[done (2.1 MiB/s)]
(1/1) Installing: libopenblasp0-0.2.11-11.1 ............................................[done]
Additional rpm output:
/sbin/ldconfig: Can't link /usr/lib64//usr/local/atlas/lib/libtatlas.so to libopenblas.so.0
В: Почему стоит забавная двойная косая черта "..64//usr.."?
Связать библиотеку
$ /usr/sbin/update-alternatives --config libblas.so.3
Selection Path Priority Status
------------------------------------------------------------
0 /usr/local/atlas/lib/libtatlas.so 70 auto mode
1 /usr/lib64/blas/libblas.so.3 50 manual mode
2 /usr/lib64/libopenblasp.so.0 20 manual mode
3 /usr/local/atlas/lib/libcblas.a 50 manual mode
4 /usr/local/atlas/lib/libptcblas.a 60 manual mode
5 /usr/local/atlas/lib/libsatlas.so 65 manual mode
* 6 /usr/local/atlas/lib/libtatlas.so 70 manual mode
В: Подходит ли эта конфигурация, поскольку некоторые статические библиотеки ".a" связаны?
Примечание: "libopenblasp.so.0" подключается автоматически после "zypper in", в то время как все библиотеки "atlas" создаются вручную командой:
$ /usr/sbin/update-alternatives --install /usr/lib64/blas/libblas.so.3 libblas.so.3 /usr/local/atlas/lib/libxxxx.x <Integer>