Intel Parallel Studio crashes

Intel Parallel Studio crashes

I decided to switch the current project to make use of the Intel C++ compiler provided by Composer. The main reason to do that was that Microsoft's compiler/linker from Visual C++ 2005 crashed or produced wrong code in release mode. Other reasons to switch were support for some C++0x features and optimizations.

Today I wanted to profile the application, but Intel Parallel Studio crashed when loading the information from the binary. Trying to open the results file always made IPS crash. I also tried to check for memory correctness, but IPS also crashed when loading the results. It used to work before the latest updates when I also used Microsoft's compiler. I switched back to the previous version of IPS: crash. Finally, I switched back to Microsoft's compiler and now it works as expected.

The crash occurs in msdia90.dll, which is a DLL used to query information from PDB files. The DLL is installed along with IPS. I tried by updating the DLL, but IPS would still crash.

I don't really know whether or not the problem is on Intel's (Intel C++ Compiler) or Microsoft's (msdia90.dll) side, and what could be done about it.

I have sent a bug report already as suggested by the crash report window.

Is it at least a known issue?

Just in case, the only C++0x feature I used was 'auto' types for some iterators, and the projet type is a DLL.

10 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Quoting - binksoftware
The crash occurs in msdia90.dll, which is a DLL used to query information from PDB files. The DLL is installed along with IPS. I tried by updating the DLL, but IPS would still crash.

I don't really know whether or not the problem is on Intel's (Intel C++ Compiler) or Microsoft's (msdia90.dll) side, and what could be done about it.

Did you install any update of Intel Parallel Composer?
does the Intel Amplifer work ok with the code compiled with VS2005?

Thanks,
Jennifer

Quoting - Jennifer Jiang (Intel)

Did you install any update of Intel Parallel Composer?
does the Intel Amplifer work ok with the code compiled with VS2005?

Thanks,
Jennifer

I installed all available updates for the whole Intel Parallel Studio suite, which includes Amplifier update 1, Inspector update 1 and Composer update 2 revised.

I just tried running Amplifier after building the DLL with VS2005 and it works. I rebuilt the project with Intel C++, ran Amplifier, and once it starts gathering information from the DLL it crashes.

Is there a way to provide more valuable information about it other than the crash report?

What is making the whole situation painful is that Intel C++ is the only option I have at hand that produces correct output for release build (and doesn't crash when linking), but Amplifier and Inspector crash when the debug build uses Intel C++. Right now I have to use VC++2005 for debug build, but be sure to switch the project to use Intel C++ for release build. That also means I cannot make use of any C++x0 features as they would not compile when using VC++2005 (I had to convert the very few I used already).

Cordially,

Paul.

Quoting - binksoftware

I installed all available updates for the whole Intel Parallel Studio suite, which includes Amplifier update 1, Inspector update 1 and Composer update 2 revised.

I just tried running Amplifier after building the DLL with VS2005 and it works. I rebuilt the project with Intel C++, ran Amplifier, and once it starts gathering information from the DLL it crashes.

Is there a way to provide more valuable information about it other than the crash report?

What is making the whole situation painful is that Intel C++ is the only option I have at hand that produces correct output for release build (and doesn't crash when linking), but Amplifier and Inspector crash when the debug build uses Intel C++. Right now I have to use VC++2005 for debug build, but be sure to switch the project to use Intel C++ for release build. That also means I cannot make use of any C++x0 features as they would not compile when using VC++2005 (I had to convert the very few I used already).

Cordially,

Paul.

Hi Paul,

This is a valuable report.

In order to dig out root-cause, we need to reproduce this problem on our side first.

1. Are you working on 32bit operation system, or 64bit operation system?
2. Are you working on Intel Core 2 platform?
3. Is it possible that you can attach an example project as a test case, so we can investigate this problem quickly?

You can reply with selecting "Reply is Private", thus your data will not be protected.

Thanks, Peter

Quoting - Peter Wang (Intel)

Hi Paul,

This is a valuable report.

In order to dig out root-cause, we need to reproduce this problem on our side first.

1. Are you working on 32bit operation system, or 64bit operation system?
2. Are you working on Intel Core 2 platform?
3. Is it possible that you can attach an example project as a test case, so we can investigate this problem quickly?

You can reply with selecting "Reply is Private", thus your data will not be protected.

Thanks, Peter

Hi Peter,

Information is as follows:

1. Windows XP Professional 32 bits.
2. Intel Pentium 4 3.0 GHz with HyperThreading enabled.
3. I'll have to check this one and see if I can get a failing test project that I can share.

By the way, where is the "Reply is Private" option?

Thanks,

Paul.

I created a small test project, but I could not get it to crash. It's quite hard to create a small project when there are so many variables involved and nothing seems to indicate what could be the cause.

In case it somehow helps, this is an overview of the project:

The whole project consists of two parts: an Executable built in Delphi 2009 and a DLL dynamically loaded created in C++ using Visual C++ 2005. The DLL makes use of a patched version of OpenCASCADE 6.3.0 (most patches published in the forums), and a modified version of Andrei Alexandrescu's Variant type. The Delphi executable and the C++ DLL communicate through a series of Wrapper classes and exported functions, and, sometimes, even more directly by using equivalent abstract classes (the Wrappers use this methodology). Additionally, the executable loads another library dynamically that is written in Delphi and uses it to load a lot of information on the C++ side. There's a heavy use of Wrappers in the process and also a lot of evil template code. There are also helper functions and classes that wrap some OpenCASCADE functionality, some of them making heavy use of templates (one of which's .obj file causes the linker to crash in release mode using VC++2005, and code in Variant makes it crash on runtime when tweaking the project just to get it to compile).

It's indeed quite difficult to know what exactly is causing the problem, and why it's only happening when using Intel C++. If there's any other thing I can try in order to nail down the possible culprit, just let me know.

Cordially,

Paul.

btw. The Intel Parallel Composer update 3 has released yesterday. Could you try it?

Download from here: https://registrationcenter.intel.com/RegCenter/Register.aspx

Jennifer

Quoting - Jennifer Jiang (Intel)
btw. The Intel Parallel Composer update 3 has released yesterday. Could you try it?

Download from here: https://registrationcenter.intel.com/RegCenter/Register.aspx

Jennifer

I have installed the update, rebuilt the project and tried again. The crash is still there.

I was wondering if you were able to reproduce the crash. In case you did, is there a specific place to follow the status of this issue?

Quoting - binksoftware
I was wondering if you were able to reproduce the crash. In case you did, is there a specific place to follow the status of this issue?

Sorry for not responding earlier. Yes I can reproduce with even newer version. I'll check with our engineers to see what might be wrong. When there's any more info, I'll let you know.

Thanks,
Jennifer

Login to leave a comment.