Intel Advisor XE

 

Инструмент Intel Advisor XE является помощником разработчика многопоточных приложений на С, С++, С# и Fortran. Он дает советы разработчику по использованию многопоточных технологий в приложении, автоматизируя анализ исходного кода, необходимый для быстрого и корректного внедрения многопоточных технологий в приложении. 

Оцените альтернативные решения до реализации

Intel Advisor XE анализирует производительность для выявления потенциальных источников для распараллеливания приложения: циклов, независимых задач и рекурсий. Далее с помощью простых аннотаций в коде можно указать те места которые вы бы хотели распараллелить и Intel Advisor XE поможет вам оценить полученный прирост производительности. Также Advisor XE отображает свои предложения по использованию параллелизма в приложении. Последующий запуск проверки корректности поможет вам выявить проблемы связанные с синхронизацией потоков и предложит способы их устранения. За несколько итераций такого подхода к проектированию многопоточности вашего приложения вы сможете быстро оценить прирост производительности нескольких альтернативных подходов внедрения многопоточности в ваше приложение еще до реализации изменений в коде. Таким образом, Intel Advisor XE позволяет вам использовать наилучшую реализацию в приложении с помощью аккуратного проектирования производительности многопоточной реализации и выявлении ошибок синхронизации потоков. Поэтому вы сможете избежать дорогостоящих ошибок проектирования вашего параллельного производительного приложения.

Меньше риска, меньше усилий, больше эффективности

Аннотации, используемые Intel Advisor XE для описания вашего проектируемого параллелизма и проверки корректности приложения и получения информации о производительности и синхронизациях, не вносят изменений в код приложения, и поэтому он остается компилируемым. Все ваши тесты продолжат работать без изменений. Это позволяет убедиться в корректности работы спроектированного многопоточного приложения, перед тем как начать внедрение многопоточности в приложение. 

Оценка конкретных технологий параллельного программирования

Проектирование параллелизма с помощью Intel Advisor XE включает в себя также выбор используемой технологии параллелизма включая такие как Intel TBB И Intel Cilk Plus. Использование таких высокоуровневых технологий позволяет добиться высокоэффективного и масштабируемого  параллелизма изменяя минимальное число строк кода. Планировщик Intel TBB и Intel Cilk Plus позволяет динамически распределять загрузку, увеличить использование КЭШ-памяти и повысить производительность. Таким образом, инструмент поможет Вам быстро разработать эффективное параллельное приложение с минимальными затратами на переработку исходного кода.