veg / hyphy

HyPhy: Hypothesis testing using Phylogenies
http://www.hyphy.org
Other
222 stars 69 forks source link

BLAS detection :: broken on x86_64 #1763

Open EricDeveaud opened 7 hours ago

EricDeveaud commented 7 hours ago

Hello,

line 322 of CMakeList.txt breaks BALS detection https://github.com/veg/hyphy/blob/cc6eee3faf4d9fb612e2b4daa04e81723fe3b599/CMakeLists.txt#L322

see. NB only loaded blas related module and gcc cmake

wget -O-  https://github.com/veg/hyphy/archive/refs/tags/2.5.63.tar.gz | tar xz 
mkdir build && cd build 
module load cmake gcc BLAS && cmake ../hyphy-2.5.63/ 2> /dev/null | grep -i BLAS
-- Could NOT find BLAS (missing: BLAS_LIBRARIES)

tried with OPenBLAS

module purge 
module load cmake gcc OpenBLAS && cmake ../hyphy-2.5.63/ 2> /dev/null | grep -i BLAS
-- Could NOT find BLAS (missing: BLAS_LIBRARIES)

and once line 322 is removed or commented

sed -i -e 's;\(^.*BLA_VENDOR Apple.*\);#\1;' ../hyphy-2.5.63/CMakeLists.txt 

same than above.

with BLAS.

module load cmake gcc BLAS && cmake ../hyphy-2.5.63/ 2> /dev/null | grep -i BLAS
-- Found BLAS: /opt/gensoft/lib/BLAS/3.8.0/lib/libblas.so

with OpenBLAS

module load cmake gcc OpenBLAS && cmake ../hyphy-2.5.63/ 2> /dev/null | grep -i BLAS
-- Found BLAS: /opt/gensoft/lib/OpenBLAS/0.3.26/lib/libopenblas.so

regards

Eric

spond commented 6 hours ago

Dear @EricDeveaud,

I should actually just remove this check. At the moment hyphy does not use BLAS even if it detects it, because it contains highly specialized code for the specific types of matrices that are likely to occur in standard models which is faster than generic BLAS.

Thanks for letting me know.

Best, Sergei