facebookresearch / faiss

A library for efficient similarity search and clustering of dense vectors.

Home Page:https://faiss.ai

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

bug: Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM . crash on win10

TtPilot96 opened this issue · comments

commented

Summary

Run the official demo: demo_weighted_kmean in faiss::knn_L2sqr(xq, xb, d, nq, nb, k, unused.data(), gt.data()); The following error occurs. how can i fix it? thank you very much !

[0.000 s] samping dataset of 128 dim vectors, Q 100 B 10000 T 10000

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .
[0.021 s] compute ground truth, k=10

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

MKL 2023.0.0
faiss 1.7.3

OS: <Windows 10>

Running on:

  • CPU
  • GPU

Interface:

  • C++
  • Python

Same results for me in the 1-Flat tutorial demo with:
MKL 2022.2.1
faiss 1.7.3

OS: <Windows 10>
Running on:
CPU

Interface:
C++

is_trained = true
ntotal = 100000
I=
    0   723   254   152
    1   995   136   183
    2   312   253    29
    3   983   467    88
    4   403   112   643
D=
      0 7.60087 7.68724 7.82754
      0 5.78548 6.72638 6.73293
      0 5.07469 6.84876 7.19263
      0 6.77275 7.04459 7.27541
      0 6.84196 6.89793  7.0937

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

Intel MKL ERROR: Parameter 3 was incorrect on entry to SGEMM .

....
I (5 first results)=
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027
I (5 last results)=
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027
 1024  1025  1026  1027

Here is a screenshot of the offending call at distances.cpp:276 with the value of the third argument:
image

Indeed, for my issue CMake defaulted to using an MKL_INTERFACE_FULL value of intel_ilp64. Setting it to intel_lp64 and linking to that library removed the error.