- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I got a 181x181 system matrix AA and a 181x1 right hand side bb. In my test program (please see attachment) I solve this equation
system twice and I get two slightly different results. Are there any explanations for this ?
The test was carried out on Windows 10 and I used VS 2017 Version 19.13.26131.1 x86.
To compile and link please use:
cl /Fodgesv_test.obj /c dgesv_test.cpp /EHsc /IC:\<path to MKL headers>
link /nologo /OUT:dgesv_test.exe /LIBPATH:C:\<path to MKL libraries> mkl_intel_c.lib mkl_sequential.lib mkl_core.lib dgesv_test.obj
Then simply run dgesv_test.exe.
Any help is appreciated.
Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That's might be the problem. Please try to set MKL_CBWR= SSE4_2/AVX/AVX2/AVX512 and check if the problem will still exist.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I forgot to mention the MKL version in my previous post.
I am using version 2020.0.166
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I forgot to mention the MKL version I am using in my previous post.
I am using MKL version 2020.0.166
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When I compile for x64 and run, I don't see any differences. The vector diff has all zero valued elements. I changed the program to output diff_sum instead of diff, and I get
Info:0 Info:0 Difference:0
When I compile for x86, I see
Info:0 Info:0 Difference:2.03139e-06
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That's might be the problem. Please try to set MKL_CBWR= SSE4_2/AVX/AVX2/AVX512 and check if the problem will still exist.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks...this helped.
I used
int my_cbwr_branch = mkl_cbwr_get_auto_branch(); if (mkl_cbwr_set(my_cbwr_branch)) { printf("Error in setting MKL_CBWR_BRANCH! Aborting…\n”); return -1; }
at the beginning of my program and now diff_sum is zero.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
CNR model affects performance. if the level of degradation will be significant, please report this case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ok...thanks. As far as I can see there is no performance impact for the cases I am analyzing.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page