Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
FPGA community forums and blogs have moved to the Altera Community. Existing Intel Community members can sign in with their current credentials.
7234 Discussions

MKL 2017 Update 1, MKL_DIRECT_CALL and zgetri issue

AndrewC
New Contributor III
1,737 Views

I have found that when MKL_DIRECT_CALL is on, there seems to be an issue with one of the zgetrf/zgetri  and 5x5 matrices. I am getting quite different results compared to MKL 2016 ( which did not have LAPACK direct call functionality) and I have tracked it down to the DIRECT_CALL implementation of theses LAPACK functions. Is this a known issue?

It would be really nice if the DIRECT _CALL allowed , via the use of #DEFINEs to be able to turn off the functionality in a more fine grained manner rather than all or nothing.

 

0 Kudos
11 Replies
AndrewC
New Contributor III
1,737 Views

Just as a hint. I am pretty sure the problem is not in 4x4 or 6x6 matrices as I would have had 100's of QA failures. It **seems** to be related to 5x5 which is an unusual size in my QA cases so only a couple failed. Maybe someone could look at this and see something by inspection.

0 Kudos
AndrewC
New Contributor III
1,737 Views

Here is a reproducer. Just comment out MKL_DIRECT_CALL and the results change significantly

Tested on WIndows, Visual Studio 2015, MKL 2017 Update 1, 64-bit

Test project MUST be using the Intel Compiler!

 

0 Kudos
Zhen_Z_Intel
Employee
1,737 Views

Dear customer,

I could not reproduce your problem in same platform(VS 2015& MKL2017u1&Intel64), could you please provide more info:

1. which version of MKL you compared? you said MKL2016, could you please provide specific version number.
2. what's the result you get? please paste here.
3. how's your compiling & linking commands? please specify your linked libraries.

I am looking forward your reply. Thanks.

Best regards,
Fiona

0 Kudos
AndrewC
New Contributor III
1,737 Views

Maybe I am not making myself clear.

  • I am using Intel C++ Composer XE 2017 Update 1 with MKL 2017 Update 1
  • Comment the line #define MKL_DIRECT_CALL and build/run the test, saving the output
  • Un-comment the line , so that MKL_DIRECT_CALL is defined and build/run, saving the output.
  • The output is different. The correct result is when MKL_DIRECT_CALL is NOT #defined/used

 

.I have attached the complete Visual Studio Project.

0 Kudos
Zhen_Z_Intel
Employee
1,737 Views

Dear customer,

I found the problem, thank you for posting the issue. We will investigate on it.

Best regards,
Fiona

0 Kudos
AndrewC
New Contributor III
1,737 Views

I have opened a premier support ticket #02634419 on this.

0 Kudos
Eugene_C_Intel1
Employee
1,737 Views

vasci_,

We investigated the issue. It is caused by a bug in implementation of LU (?GETRF routine) for MKL_DIRECT_CALL for size 5x5. It will be fixed in the nearest MKL release. But as a workaround you can fix it in your own mkl_direct_lapack.h header. Please find attached a patch with the fix.

Thank you for your report!

Regards,
Eugene

0 Kudos
AndrewC
New Contributor III
1,737 Views

OK, thanks! Hopefully this will make it into Update 2.

0 Kudos
Gennady_F_Intel
Moderator
1,737 Views

Hi Andrew, We have added the fix in the latest MKL version ( MKL v.2017 update 3) which has been released yesterday. Please update, take a look and make sure that we have indeed fixed the problem. Thank you! 

0 Kudos
AndrewC
New Contributor III
1,737 Views

OK, I am going through the process of updating to "Composer Update 4"

0 Kudos
AndrewC
New Contributor III
1,737 Views

The issue is fixed!

0 Kudos
Reply