Профилирование Windows-приложений
Требования к подготовке слушателей:
-
Базовые знания архитектуры Microsoft ® Windows ™
-
Глубокое знание языков программирования С и C++
-
Знание WinAPI
-
Знание среды разработки MS Visual Studio 2008/2010
Цель курса:
Программа курса:
Основные причины снижения производительности и методы оптимизации программ:
-
Аппаратно-зависимые причины низкой производительности
-
Многопоточность на одноядерных процессорах
-
Архитектура памяти в параллельных вычислительных системах (SIMD и MIMD архитектуры)
-
Программные причины низкой производиетльности
- Базовые критерии ускорения программы. Закон Амдала.
- Декомпозиция данных, функциональная декомпозиция.
Стратегии оптимизации:
-
Планирование потоков
-
Синхронизация
-
Гранулярность
- Проблемы коммуникаций
- Балансировка нагрузки (Load balancing)
Intel VTune Amplifier XE Perfomance Profiler
-
Обзор основных возможностей
-
Интерфейс VTune
-
Выявление «горячих» функций, кадрирование
-
Выявление малоэффективных фрагментов кода
-
Выявление избыточных синхронизаций
-
Поиск «бутылочного горлышка»
-
События VTune
-
Время доступа к памяти
-
Анализ исходного кода – просмотр функций и стек вызовов
-
Функции сравнения «до-после»
-
Просмотр результатов по вычислительным потокам
-
Производительность приложения
-
Использование из командной строки для удалённого сбора данных или регрессивного тестирования
Оптимизация циклических конструкций
-
Примеры плохих циклов, рекомендации
-
Чистка циклов
-
Разбиение и слияние циклов
-
Вынос условных переходов
-
Расщепление и развертка циклов
Intel® Inspector XE
Вам необходимо авторизироваться, чтобы заказать курсы.
|