Pour obtenir une clé
d'essai remplissez le formulaire ci-dessous
Demandez des tariffs
Nouvelle licence
Renouvellement de licence
--Sélectionnez la devise--
* En cliquant sur ce bouton, vous acceptez notre politique de confidentialité

Free PVS-Studio license for Microsoft MVP specialists
To get the licence for your open-source project, please fill out this form
** En cliquant sur ce bouton, vous acceptez notre politique de confidentialité.

I am interested to try it on the platforms:
** En cliquant sur ce bouton, vous acceptez notre politique de confidentialité.

Votre message a été envoyé.

Nous vous répondrons à

Si vous n'avez toujours pas reçu de réponse, vérifiez votre dossier
Spam/Junk et cliquez sur le bouton "Not Spam".
De cette façon, vous ne manquerez la réponse de notre équipe.

Feeling the new Intel Parallel Studio X…

Feeling the new Intel Parallel Studio XE 2011 beta

02 Sep 2010

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:

(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:


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:

  #define nullptr 0

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:


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


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.

Comments (0)

Next comments
Unicorn with delicious cookie
Nous utilisons des cookies pour améliorer votre expérience de navigation. En savoir plus