-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FindMKL module: which mkl versions to prioritize #480
Comments
I think the only difference is that ILPL is 64-bit integers and LPL is 32-bit integers? Which integers do we want to prefer and do we want to prefer threaded MKL? @crtrott @srajama1 @kyungjoo-kim @ndellingwood |
I would first check if the compiler is intel or not . If the compiler is intel, instead of giving compile/link flags, we can just give "-mkl". If the compiler is not intel and still we want to check mkl upon request, I would go for threaded version with 64bit int. MKL automatically turns off threading if the mkl call is made inside of opemp region. |
Makefile.kokkos-kernels actually sets the include path and links to lp64 rather than using -mkl (AFAICT). I can certainly just use the -mkl for Intel compilers, if that's how people want to do it and use whatever default the compiler gives us. |
You can definitely follow the existing logic. I think that using "-mkl" whenever possible is the most portable way for intel compilers. I think that intel probably used to have many troubles in guiding users to use correct compile/link flags and developed the idea of using "-mkl" and it is a simple solution. |
@jjwilke I think this can be closed and done as part of 3.0.00? |
I believe so. The solution here was to only use MKL with Intel compiler. Can @kyungjoo-kim confirm: do we need MKL support for non-Intel? |
Okay. Let's keep this open. I can have two configuration paths for Intel/non-Intel. If not Intel, I am going to look for MKL Intel10_64ilp only. |
At this time, Sierra only uses MKL with the Intel compiler. |
Okay, now I'm remembering the issues. Do we need 32-bit or 64-bit integers? I need to know whether to link LP64 or ILP64. |
@jjwilke Trilinos uses 32-bit integers (LP64) with BLAS libraries. |
So this is fun. When using GCC, it is recommended to link |
Add support for GCC MKL builds: Issue #480
CMake can be set to compile/link with MKL flags for each of the follow versions:
We need to choose an ordering in terms of preference.
The text was updated successfully, but these errors were encountered: