- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am using the LAPACKE_dgesv in visual studio Ultimate 2012 Version 11.0.61030.00 Update 4 with Intel C++ 14.0 as
info = LAPACKE_dgesv(LAPACK_ROW_MAJOR, n, nrhs, *a, lda, ipiv, *b, ldb);
LAPACKE_degsv works in the debug mode, but got crashed in the release mode with the following errors:
"Unhandled exception at 0x00007ff714da0888 in MyProg.exe: 0xC0000005: Access violation at location 0x00007ff714da0888."
It is hard to post a sample codes for my program. Command lines are supplied below. Are there any problems for invoking the MKL library? I appreciate any suggestions for this type of problem. Thanks!
Compile Command line:
/Yu"stdafx.h" /GS /W3 /Gy /Zc:wchar_t /I"C:\Program Files (x86)\Intel\Composer XE 2013 SP1\mkl\include" /Zi /O2 /Fd"Release\vc110.pdb" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /Qipo /Zc:forScope /Gd /Oi /MD /Fa"Release\" /EHsc /nologo /Fo"Release\" /Fp"Release\MyProg.pch"
Liner Command line:
/OUT:"D:\Release\MyProg.exe" /MANIFEST /NXCOMPAT /PDB:"D:\Release\MyProg.pdb" /DYNAMICBASE "mkl_intel_c.lib" "mkl_core.lib" "mkl_sequential.lib" "mkl_lapack95.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG /MACHINE:X86 /OPT:REF /SAFESEH /INCREMENTAL:NO /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\MyProg.exe.intermediate.manifest" /OPT:ICF /NOLOGO /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2013 SP1\mkl\lib\ia32" /TLBID:1
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
PS: If I select the Microsoft Visual C++ instead of the Intel C++ in the Visual studio, it works in the release mode.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is an example (lapacke_dgesv_row.c) in the MKL distribution with the same argument list as in #1. It can be built with Intel C (32 and 64 bit) with the command icl /Qmkl /MD, and runs correctly. Note that the command line builds a "release mode" EXE (humorous aside: a famous computer scientist wrote that "release mode" could be compared to a fast car that had no seat-belts and was expected to be operated only by expert drivers).
I suspect one or more errors in the arguments that your call to the LAPACKE_dgesv routine. Try to construct a demonstrator program and post it here.
If your caller is in C++ rather than C, there are more opportunities for errors in the linkage to MKL.
![](/skins/images/D2683F18326913BBA0436CB7114DD569/responsive_peak/images/icon_anonymous_message.png)
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page