blis
blis copied to clipboard
Warning: The value EMIN may be incorrect
Dear BLIS-developers, I've installed multithreaded BLIS through PETSc and get a warning when running my code:
WARNING. The value EMIN may be incorrect:- EMIN = 1
If, after inspection, the value EMIN looks acceptable please comment out
the IF block as marked within the code of routine DLAMC2,
otherwise supply EMINexplicitly.
EMIN is not consistently -1, but varies (e.g. 0, 1, -354, ...). Is this a serious problem and what could I do to solve the issue? Thanks!
I don't have a clue what could be causing this. BLIS has no variable called EMIN, how is this calculated/stored/used?
@MariusCausemann Aha, now my memory is triggered. I rewrote this code to use the C builtin constants but maybe somehow that is problematic. There is a line #ifdef BLIS_ENABLE_LEGACY_LAMCH
at the beggining of frame/base/noopt/bli_slamch.c
and frame/base/noopt/bli_dlamch.c
. Please change this to #if 1
, recompile, and test again.
Hi @devinamatthews! I'm only trying to use BLIS through PETSc (never compiled it outside the PETSc installation process) and don't have the time to investigate this in-depth at the moment, sorry. I could provide more information (e.g the docker file I use for installation) if that would be helpful?
@MariusCausemann if you provide the docker file maybe just maybe I can suggest an addition to patch this change in.
Hi @devinamatthews , here is the Dockerfile. The blis installation is handled by PETSc, so it might be a bit tricky to get that patch in. docker.txt
You'll need to add a command before installing PETSc to install BLIS from source (with patch) and then have PETSc use that. I don't know what configure options you need for PETSc but installing BLIS should go something like this:
RUN git clone https://github.com/flame/blis blis-src && \
cd blis-src && \
sed --in-place 's/BLIS_ENABLE_LEGACY_LAMCH/1/' frame/base/noopt/bli_slamch.c && \
sed --in-place 's/BLIS_ENABLE_LEGACY_LAMCH/1/' frame/base/noopt/bli_dlamch.c && \
./configure --prefix=/usr/local/blis auto && \
make && \
make install