metrica
Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
close form

Заполните форму в два простых шага ниже:

Ваши контактные данные:

Шаг 1
Поздравляем! У вас есть промокод!

Тип желаемой лицензии:

Шаг 2
Team license
Enterprise license
** Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности
close form
Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Бесплатная лицензия PVS‑Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
check circle
Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте папку
Spam/Junk и нажмите на письме кнопку "Не спам".
Так Вы не пропустите ответы от нашей команды.

Вебинар: Трудности при интеграции SAST, как с ними справляться - 04.04

>
>
Щупаем новый Intel Parallel Studio XE 2…

Щупаем новый Intel Parallel Studio XE 2011 beta

02 Сен 2010

Вот, наконец, добрался попробовать Си++ компилятор, входящий в состав Intel Parallel Studio XE 2011 beta. Привожу краткий отчет о своих экспериментах.

Скачать и попробовать новую версию Parallel Studio можно здесь: Intel Parallel Studio XE 2011 for Windows* Beta Registration. Лицензия на beta-версию предоставляется на несколько месяцев, так что времени для экспериментов с инструментом вполне достаточно. Размер дистрибутива (for IA-32/Intel 64 - 1 GB) несколько удивляет, но в настоящее время, думаю, скачать его не будет проблематично.

Меня и коллег в Intel Parallel Studio интересовал собственно один единственный вопрос - сборка PVS-Studio. Хотелось посмотреть, получим ли мы прирост производительности? и каков будет этот прирост.

Меня не интересуют абстрактные маленькие программы-примеры, где быстро что-то считают математическое. Это слишком оторвано он реальности. А у нас в руках есть свой собственный совершенно реальный проект, представляющий собой работу над графами (деревом разбора).

Анализатор PVS-Studio имеет конфигурацию для сборки под Win32 и Win64. Нас кончено в первую очередь интересовала 64-битная сборка, но, к сожалению, с ней не заладилось. Мы используем Boost, который нам не удалось собрать для Win64. Возможно, мы что-то делали не правильно и руки у нас не там. Однако кажется причина все таки в дефекте компилятора, в результате чего на многих файлах мы получили сообщения вида:

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)

С другими конфигурациями библиотеки Boost проблем не возникло:

0077_Intel_Parallel_Studio_XE_beta_ru/image1.png

Как видно Debug успешно собирается как в 32-битном, так и 64-битном режиме. К сожалению, Debug-версии нам не интересны, поэтому пришлось ограничиться сравнением Release Win32 и Release Win64.

Еще попутным мелким неприятным моментом оказалось, что Intel C++ до сих пор так и не научился поддерживать "nullptr", появившийся в C++0x. Пришлось сделать вставку в stdafx.h:

#ifdef __INTEL_COMPILER
  #define nullptr 0
#endif

А теперь самое интересное - замер скорости работы внутренних тестов. Простая перекомпиляция проекта ничего не дает, даже приводит к замедлению его работы:

0077_Intel_Parallel_Studio_XE_beta_ru/image2.png

Однако уже использование ключей /Qipo "Multifile interprocedural optimization" и /GA "Optimize for Windows Applications" дает заметный прирост производительности:

0077_Intel_Parallel_Studio_XE_beta_ru/image3.png

А вот использование опции /Qparallel (Tells the auto-parallelizer to generate multithreaded code for loops that can be safely executed in parallel) ничего заметного не дало. Но возможно мы просто "не умеем их готовить", и к своему стыду были не заинтересованы продолжать изучение. Не интересно по той причине, что более подробные эксперименты с возможностями оптимизации имеют смысл для нас только относительно 64-битной версии. Надеемся релиз Intel Parallel Studio будет более стабильный и тогда можно будет продолжить. Однако уже видно, что можно получить существенный выигрыш от смены компилятора. Рекомендую попробовать.

Популярные статьи по теме


Комментарии (0)

Следующие комментарии next comments
close comment form