Компьютерные науки

Введение в оптимизацию приложений с помощью инструментов Intel

Программа об улучшении производительности приложений с использованием компилятора Intel и профилировщика VTune Amplifier. Кратко описывается архитектура микропроцессоров и рассматриваются различные уровни оптимизации кода.
Студентов 370 Выпускников 28 Для специалистов
690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.
Темы:
Программирование
Объем

36 час.
Длительность

30 дней
Нагрузка в неделю

9 час.
Формат обучения

Дистанционно (самостоятельно)
Описание Учебная программа представляет собой англоязычное руководство по ускорению программного обеспечения инструментами Intel. Вначале дается обзор базовой микропроцессорной архитектуры и средств анализа производительности. Затем подробно разбираются возможности оптимизирующего компилятора: скалярные и циклические оптимизации, векторизация и автоматическое распараллеливание. Материал выстроен вокруг англоязычной терминологии оптимизации. Отдельное внимание уделено основам работы с OpenMP, межпроцедурным трансформациям, а также инструментам статического и динамического профилирования. Практика профилирования в VTune Amplifier и основы OpenMP чередуются с тестовыми блоками для контроля усвоения. Материал подойдет разработчикам высоконагруженных приложений, стремящимся максимально задействовать потенциал современных вычислительных платформ.
Цели
  • Сформировать понимание методов улучшения производительности приложений с помощью инструментов Intel.
  • Раскрыть возможности компилятора для скалярной, циклической и межпроцедурной оптимизации.
  • Дать основы векторизации и автоматического распараллеливания вычислений.
  • Познакомить с принципами работы в стандарте OpenMP и профилированием кода.
Чему я научусь?
  • Анализировать производительность программ инструментами Intel Performance Tools.
  • Настраивать компилятор для эффективной векторизации и оптимизации циклов.
  • Использовать автоматическое распараллеливание и базовые конструкции OpenMP.
  • Применять статическое и динамическое профилирование для поиска проблемных участков кода.
  • Работать с менеджером памяти и генератором кода компилятора Intel.

Авторы

Ануфриенко Андрей Владимирович
Ануфриенко Андрей Владимирович
Intel Compiler Group, Novosibirsk.
Идрисов Ренат Искандерович
Идрисов Ренат Искандерович
К.ф.-м.н , ИСИ им. А.П. Ершова СО РАН.
Чему я научусь?
  • Анализировать производительность программ инструментами Intel Performance Tools.
  • Настраивать компилятор для эффективной векторизации и оптимизации циклов.
  • Использовать автоматическое распараллеливание и базовые конструкции OpenMP.
  • Применять статическое и динамическое профилирование для поиска проблемных участков кода.
  • Работать с менеджером памяти и генератором кода компилятора Intel.

Учебный план

Занятия
Экзамен экстерном Внимание! Экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите подтвердить свои знания по данному курсу без его изучения или поверить свои знания по нему. Экзамен экстерном можно сдать только один раз. 90 мин
1 Introduction to application optimizations with usage of Intel® performance tools At the first lecture common Intel microprocessor architecture and the main factors affecting its performance are... At the first lecture common Intel microprocessor architecture and the main factors affecting its performance are described. The simplifiedmicroprocessor model is used to show the subsystems role and describe the main features such as multi-level memory model, common and vector registers, data prefetching mechanism, branch prediction, pipeline and superscalar features, vector instructions, multi-core, multi-processor. Performance optimization compiler role is also described. ещё
Introduction to application optimizations with usage of Intel® performance tools тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 50 мин
2 Intel® performance analyze tools "Second lecture briefly describes important performance tool VTune Amplifier and describes the main ideas of its... "Second lecture briefly describes important performance tool VTune Amplifier and describes the main ideas of its usage ещё
Intel® performance analyze tools тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 25 мин
3 Optimizing compiler Scalar optimizations At this lecture Intel Compilers approximate compilation scheme is given. Role of the frontend and the... At this lecture Intel Compilers approximate compilation scheme is given. Role of the frontend and the internal representation of the compiler. Control flow graph and its importance for the analysis. The basic scalar optimizations. The notion of the static single assignment form. ещё
Optimizing compiler Scalar optimizations тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 70 мин
4 Optimizing compiler. Loop optimizations "This lecture is devoted to the loops and loop optimizations. Discussed topics are: the problem of... "This lecture is devoted to the loops and loop optimizations. Discussed topics are: the problem of classification and loop recognition ещё
Optimizing compiler. Loop optimizations тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 50 мин
5 Optimizing compiler. Vectorization "The lecture reviews basic principles of the vectorization. Discussed topics are: the problems of an automatic... "The lecture reviews basic principles of the vectorization. Discussed topics are: the problems of an automatic vectorization ещё
Optimizing compiler. Vectorization тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 30 мин
6 Optimizing compiler. Auto parallelization The lecture describes main features of the multiprocessor and multicore computing systems, pros and cons of... The lecture describes main features of the multiprocessor and multicore computing systems, pros and cons of the multithreaded applications. Auto parallelization as the simple method for multi-threaded application creation. Compiler command line options. Some of the language extensions used for parallelization Manual and automatic prefetching. ещё
Optimizing compiler. Auto parallelization тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 55 мин
7 OpenMP fundamentials In this lecture describes OpenMP basics. OpenMP workflow and its limitation. Different variables and sections of... In this lecture describes OpenMP basics. OpenMP workflow and its limitation. Different variables and sections of the code, critical and concurrent sections, loop parallelization directives, loop iteration scheduling. ещё
OpenMP fundamentials тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 30 мин
8 Optimizing compiler. Interpocedural optimizations The lecture is about the interprocedural optimizations and analysis. Reasons for the entire program analysis, whole... The lecture is about the interprocedural optimizations and analysis. Reasons for the entire program analysis, whole program analysis limitations and simplifications. Mod/ref analysis, local point to analysis, propagation of function and variables attributes. Compiler command line options for interprocedural analysis/optimizations control. ещё
Optimizing compiler. Interpocedural optimizations тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 65 мин
9 Optimizing compiler. Static and dynamic profiler. Memory manager. Code generator This lecture describes the roles of the profiler, memory manager and code generator. Principles of dynamic... This lecture describes the roles of the profiler, memory manager and code generator. Principles of dynamic profiler usage. The difference between static and dynamic profiling. Memory distribution and allocation issues. Memory manager affection on application performance. Register allocation and instruction scheduling. ещё
Optimizing compiler. Static and dynamic profiler. Memory manager. Code generator тест для курса Введение в оптимизацию приложений с помощью инструментов Intel 40 мин
10 Высокопроизводительные компиляторы Intel C++ и Fortran Intel Composer XE 2013
11 Intel-VTune-Amplifier-XE-2013-PB-Russian
12 Intel-Cluster-Studio-XE-2013SP1-PB-RU-082713
13 Программные инструменты Intel для разработчиков
Тренировочный экзамен Внимание! Тренировочный экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите проверить свои знания курса перед сдачей экзамена. Тренировочный экзамен можно сдавать сколько угодно один раз. 90 мин
Экзамен 60 мин

Какой документ я получу?

Сертификат

Выдаётся автоматически после успешного завершения программы.

Удостоверение о повышении квалификации

Выдается при наличии среднего специального или высшего образования (необходимые документы).

Стоимость программы

690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.