====== OpenBLAS ====== Multiprocessing python code can work very slow (with linear equations) on multicore machines when numpy linked to the wrong blas library.\\ Here is the link how to install OpenBLAS and numpy in a proper way to speed up the performance: [[https://hunseblog.wordpress.com/2014/09/15/installing-numpy-and-openblas/]] This procedure has been done on Server: rose * sudo apt-get install git python-dev gfortran ===== OpenBLAS ===== To install OpenBLAS, do the following commands - cd ~/src - git clone https://github.com/xianyi/OpenBLAS - cd OpenBLAS - make FC=gfortran - sudo make PREFIX=/opt/openblas install Need to tell the system about the new library; create config file and insert the path to new library! vi /etc/ld.so.conf.d/openblas.conf /opt/openblas/lib Update system with new library path! sudo ldconfig In case you have also the libblas lib installed, we need to change that. update-alternatives --install /usr/lib/libblas/libblas.so.3 libblas.so.3 /opt/openblas/lib/libopenblas.so 40 update-alternatives --config libblas.so.3 There are 2 choices for the alternative libblas.so.3 (providing /usr/lib/libblas/libblas.so.3). Selection Path Priority Status ------------------------------------------------------------ * 0 /opt/openblas/lib/libopenblas.so 40 auto mode 1 /opt/openblas/lib/libopenblas.so 40 manual mode 2 /usr/lib/atlas-base/atlas/libblas.so.3 35 manual mode Press enter to keep the current choice[*], or type selection number: 0 ===== Numpy ===== Install Numpy - cd ~/src - git clone https://github.com/numpy/numpy - cd ~/numpy By default, the repository will be on the current development (master) branch. I prefer to use the latest stable branch. To find this, type git checkout v and press Tab. * git checkout v1.11.1 Add a config file site.cfg vi site.cfg [default] include_dirs = /opt/openblas/include library_dirs = /opt/openblas/lib [openblas] openblas_libs = openblas library_dirs = /opt/openblas/lib [lapack] lapack_libs = openblas library_dirs = /opt/openblas/lib Now run: python setup.py config python setup.py build --fcompiler=gnu95 If all configured without errors, finally install it! python setup.py install