Пятница, 18 мая

CISCHOOL » Каталог курсов » Программирование

Профилирование Windows-приложений

Требования к подготовке слушателей:

  • Базовые знания архитектуры Microsoft ® Windows ™ 
  • Глубокое знание языков программирования С и C++
  • Знание WinAPI
  • Знание среды разработки MS Visual Studio 2008/2010

Цель курса:

  • Научить слушателей принципам отладки, профилирования и оптимизации многопоточных Windows-приложений

Программа курса:

Основные причины снижения производительности и методы оптимизации программ:

  • Аппаратно-зависимые причины низкой производительности
  • Многопоточность на одноядерных процессорах
  • Архитектура памяти в параллельных вычислительных системах (SIMD и MIMD архитектуры)
  • Программные причины низкой производиетльности
    • Источники накладных расходов
    • Основные модели взаимодействия потоков
    • Общие данные, локализация данных
    • Оптимизация циклов, балансирование нагрузки между потоками
    • Разделяемая общая память, семафоры и блокировки. Взаимная блокировка
    • Состояние гонки
  • Базовые критерии ускорения программы. Закон Амдала.
  • Декомпозиция данных, функциональная декомпозиция.

Стратегии оптимизации:

  • Планирование потоков
  • Синхронизация
  • Гранулярность
  • Проблемы коммуникаций
  • Балансировка нагрузки (Load balancing)

Intel VTune Amplifier XE Perfomance Profiler

  • Обзор основных возможностей
  • Интерфейс VTune
  • Выявление «горячих» функций, кадрирование
  • Выявление малоэффективных фрагментов кода
  • Выявление избыточных синхронизаций
  • Поиск «бутылочного горлышка»
  • События VTune
  • Время доступа к памяти
  • Анализ исходного кода – просмотр функций и стек вызовов
  • Функции сравнения «до-после»
  • Просмотр результатов по вычислительным потокам
  • Производительность приложения
  • Использование из командной строки для удалённого сбора данных или регрессивного тестирования

Оптимизация циклических конструкций

  • Примеры плохих циклов, рекомендации
  • Чистка циклов
  • Разбиение и слияние циклов
  • Вынос условных переходов
  • Расщепление и развертка циклов

Intel® Inspector XE

  • Memory Checker – выявление проблем с использованием памяти
    • Ошибки API-вызовов выделения/освобождения памяти
    • Поиск утечек памяти
    • Порча данных
  • Thread Checker
    • Выявление гонок
    • Поиск взаимных блокировок
    • Анализ использования API-вызовов синхронизации

Вам необходимо авторизироваться, чтобы заказать курсы.

Корзина
Курсов в корзине: 0
На сумму: 0 р.
Оформить заказ

Цена: 15000 р.

Длительность (дни /часы): 2 / 16

Ближайшие даты курса:

Тел: +7 (499) 343-7035

ICQ:   482-519-749

Ваш email
Подписаться на рассылку!