Our website uses cookies to enhance your browsing experience.
Accept
to the top
>
>
Feeling the new Intel Parallel Studio X…

Feeling the new Intel Parallel Studio XE 2011 beta

Sep 02 2010
Author:

So I've gotten to try the C++ compiler included into Intel Parallel Studio XE 2011 beta at last. Here is a brief report of my experiments.

You may download and try the new version of Parallel Studio here: Intel Parallel Studio XE 2011 for Windows* Beta Registration. The license for the beta-version is provided for several months, so you've got enough time to experiment with the tool. The size of the distribution package (for IA-32/Intel 64 - 1 GB) is a bit surprising but I think it won't be a problem to download it at present.

I and my colleagues in Intel Parallel Studio were interested in one single question all in all - the build of PVS-Studio. We wanted to see if we would get a performance gain and how great it would be.

I am not interested in abstract small demo programs where some mathematical matter is quickly calculated. This is too far from reality. But here we've got our own absolutely real project whose job is to work with graphs (a parse tree).

The PVS-Studio analyzer has configurations for builds under Win32 and Win64. Of course we were interested first of all in the 64-bit version but unfortunately something went wrong with it. We use Boost which we did not manage to build for Win64. Perhaps we did something wrong and have clumsy hands. But it seems that the reason lay in the compiler's defect that resulted in printing the following message on many files:

c:\boost_1_44_0\libs\iostreams\src\file_descriptor.cpp(294) 
(col. 1): internal error: 0_1374
compilation aborted for libs\iostreams\src\file_descriptor.cpp 
(code 4)

We did not encounter any issues with other configurations of the Boost library:

0077_Intel_Parallel_Studio_XE_beta/image1.png

As you may see, the Debug version is successfully built both in the 32-bit and 64-bit modes. Unfortunately, we are not interested in Debug-versions, so we had to confine ourselves to comparing Release Win32 and Release Win64.

Another small accompanying unpleasant thing was that Intel C++ still cannot support "nullptr" that has appeared in C++0x. So we had to insert the following code into stdafx.h:

#ifdef __INTEL_COMPILER
  #define nullptr 0
#endif

And now the most interesting thing - measuring the speed of internal tests. Simple recompilation of the project does not give anything and even causes slow-down of its work:

0077_Intel_Parallel_Studio_XE_beta/image2.png

But using the switches /Qipo "Multifile interprocedural optimization" and /GA "Optimize for Windows Applications" gives a significant performance gain:

0077_Intel_Parallel_Studio_XE_beta/image3.png

However, the option /Qparallel (Tells the auto-parallelizer to generate multithreaded code for loops that can be safely executed in parallel) did not influence the work in any appreciable way. Well, perhaps we "simply cannot cook them" and, shame on us, we were not interested in continuing the experiment. It was not interesting for us because more detailed experiments with optimization capabilities are relevant for us only when dealing with a 64-bit version. We hope that the release-version of Intel Parallel Studio will be stabler and we will be able to continue then. However, it is already evident that we can get a significant benefit from changing the compiler. So I recommend you to try it.

Popular related articles


Comments (0)

Next comments next comments
close comment form
close form

Fill out the form in 2 simple steps below:

Your contact information:

Step 1
Congratulations! This is your promo code!

Desired license type:

Step 2
Team license
Enterprise license
** By clicking this button you agree to our Privacy Policy statement
close form
Request our prices
New License
License Renewal
--Select currency--
USD
EUR
* By clicking this button you agree to our Privacy Policy statement

close form
Free PVS‑Studio license for Microsoft MVP specialists
* By clicking this button you agree to our Privacy Policy statement

close form
To get the licence for your open-source project, please fill out this form
* By clicking this button you agree to our Privacy Policy statement

close form
I am interested to try it on the platforms:
* By clicking this button you agree to our Privacy Policy statement

close form
check circle
Message submitted.

Your message has been sent. We will email you at


If you do not see the email in your inbox, please check if it is filtered to one of the following folders:

  • Promotion
  • Updates
  • Spam