I would like to use the blis and libflame libraries precompiled by AMD and available on https://developer.amd.com/amd-cpu-libraries/blas-library/#libflame for usage on an AMD Threadripper machine. However, when linking these libraries to fortran code that uses BLAS and LAPACK subroutines, I get a number of messages that not a single LAPACK routine can be found in libflame (whereas blis seems to provide all the requested BLAS routines). This seems to suggest that the optional lapack compatibility layer lapack2flame has not been compiled into the libflame library provided by AMD. I hope AMD can provided updated libraries that include the lapack2flame layer on the developer webpage. I have tried to compile blis and libflame from source, but could not make it work.
This e-mail originally went to AMD's support, which then asked me to post it here.
You are correct. The optional LAPACK compatibility layer lapack2flame has not been compiled into the libflame binary published by AMD.
We are planning to publish new binaries with lapack2flame enabled, in near future.
In the mean time, I can help you with building libflame from source available on AMD's Github page: GitHub - amd/libflame: High-performance object-based library for DLA computations
To get the source:
git clone https://github.com/amd/libflame.git
./configure --enable-lapack2flame --disable-autodetect-f77-ldflags --disable-autodetect-f77-name-mangling --enable-cblas-interfaces
Build sample app:
gfortran sample_app.f -I/path/to/libflame/include/ /path/to/libflame.a /path/to/libblis.a -lm
Please feel free to get back to us for any further clarifications or help.