Профилирование

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

Содержание

В информатике

Профилирование — сбор характеристик работы программы, таких как время выполнения отдельных фрагментов (обычно подпрограмм), число верно предсказанных условных переходов, число кэш промахов и т. д. Инструмент, используемый для анализа работы, называют профилировщиком. Обычно выполняется совместно с оптимизацией программы.

Характеристики могут быть аппаратными (время) или вызванные программным обеспечением (функциональный запрос). Инструментальные средства анализа программы чрезвычайно важны для того, чтобы понять поведение программы. Проектировщики ПО нуждаются в таких инструментальных средствах, чтобы оценить, как хорошо выполнена работа. Программисты нуждаются в инструментальных средствах, чтобы проанализировать их программы и идентифицировать критические участки программы.

Это часто используется, чтобы определить, как долго выполняются определенные части программы, как часто они выполняются, или генерировать граф вызовов (Call Graph). Обычно эта информация используется, чтобы идентифицировать те участки программы, которые работают больше всего. Эти трудоёмкие участки могут быть оптимизированы, чтобы выполняться быстрее. Это — также общая методика для отладки.

Также выделяют анализ покрытия (Code Coverage) — процесс выявления неиспользуемых участков кода при помощи, например, многократного запуска программы.

Также не стоит забывать о том что для удачной профилировки динамической библиотеки её не нужно выгружать.

Примеры профилировщиков

  • gcov — анализатор покрытия из проекта GCC.
  • gprof — профилировщик из проекта GCC. (К сожалению у gprof есть недостаток — он не позволяет профилировать одновременно динамические библиотеки и основную программу.)
  • oprofile
  • hprof — профилировщик виртуальной машины Java.
  • DevPartner Studio
  • Intel VTune
  • AMD CodeAnalyst
  • AQtime - позволяет профилировать одновременно динамические библиотеки и основную программу


В строительстве в дорожном деле

Профилирование — измерение уклонов и неровностей дорожного покрова.

В технологии и производстве

Профилирование — придание изделию некоторой заданной формы. Так же: определение профиля. Например: профилирование инструмента - определение профиля формообразующих поверхностей инструмента.


cs:Profilování

de:Profiler (Programmierung) en:Profiling (computer programming) ja:性能解析 nl:Profiler uk:Профілювання (комп'ютерні науки) zh:性能分析

Личные инструменты

Served in 0.099 secs.