- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are building a custom dll using the builder tool and calling it via P/Invoke from a .NET app.
When calling vmlGetMode() on an Athlon64 (running on 32-bit XP) we are getting a Access Violation exception. This error does not occur on Intel CPUs.
We have tried:
- setting OMP_NUM_THREADS to 1
- changing the calling convention to stdcall
- linking mkl_sequential instead of mkl_intel_thread
but none of these seemed to help.
When calling vmlGetMode() on an Athlon64 (running on 32-bit XP) we are getting a Access Violation exception. This error does not occur on Intel CPUs.
We have tried:
- setting OMP_NUM_THREADS to 1
- changing the calling convention to stdcall
- linking mkl_sequential instead of mkl_intel_thread
but none of these seemed to help.
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Could you give more information about your problem?
1) which version of MKL was used?
2) short example which illustrate the problem would be very appreciable.
Andrey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are now building the custom DLL with 10.0.2.019, but it is still not working.
It seems that we have an intermittent problem which may not be restricted to Athlon64. After some amount of research, I feel that the cause of our problems may be some incorrect/missing initialization of TLS... but I am also under the impression that building with the custom DLL build tool should produce the correct TLS initialization section?
Here are a couple of combinations that are not working for us (all with MKL 10.0.2.019):
Dual Xeon E5405 Quadcore, Windows Server 2003 Standard x64 SP2, 32-bit .NET application calling ia32 custom DLL linked with mkl_sequential via P/Invoke
Athlon64 X2 Dual, Windows XP Home, 32-bit .NET application calling ia32 custom DLL linked with mkl_sequential via P/Invoke
Surprisingly, we have several Xeons running Windows x64 where the custom DLL does work. And so far, no problems on 32-bit CPUs.
Any ideas?
It seems that we have an intermittent problem which may not be restricted to Athlon64. After some amount of research, I feel that the cause of our problems may be some incorrect/missing initialization of TLS... but I am also under the impression that building with the custom DLL build tool should produce the correct TLS initialization section?
Here are a couple of combinations that are not working for us (all with MKL 10.0.2.019):
Dual Xeon E5405 Quadcore, Windows Server 2003 Standard x64 SP2, 32-bit .NET application calling ia32 custom DLL linked with mkl_sequential via P/Invoke
Athlon64 X2 Dual, Windows XP Home, 32-bit .NET application calling ia32 custom DLL linked with mkl_sequential via P/Invoke
Surprisingly, we have several Xeons running Windows x64 where the custom DLL does work. And so far, no problems on 32-bit CPUs.
Any ideas?

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