Это команда dprofppp, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
dprofpp - отображать данные профиля Perl
СИНТАКСИС
дпрофпп [-a|-z|-l|-v|-U] [-d] [-s|-r|-u] [-q] [-F] [-I | -E] [-O CNT] [-A] [-R] [-S] [-g
подпрограмма] [-G [-P]] [-f ] [профиль]
дпрофпп -T [-F] [-g подпрограмма] [профиль]
дпрофпп -t [-F] [-g подпрограмма] [профиль]
дпрофпп -G [-P] [профиль]
дпрофпп -p скрипт [-Q] [другие варианты]
дпрофпп -V [профиль]
ОПИСАНИЕ
Ассоциация дпрофпп команда интерпретирует данные профиля, созданные профилировщиком, например
Профайлер Devel :: DProf. Dprofpp прочитает файл tmon.out и отобразить 15 подпрограмм
которые используют больше всего времени. По умолчанию указано время для каждой подпрограммы.
без учета времени их дочерних подпрограмм.
Чтобы профилировать сценарий Perl, запустите интерпретатор Perl с -d выключатель. Итак, чтобы профиль
скрипт test.pl с Devel :: DProf используйте следующее:
$ perl5 -d: DProf test.pl
Затем запустите dprofpp, чтобы проанализировать профиль. Вывод dprofpp зависит от флагов для
программу и версию Perl, которую вы используете.
$ dprofpp -u
Общее прошедшее время = 1.67 секунд
Пользовательское время = 0.61 секунды
Эксклюзивные времена
% Time Seconds # Calls sec / имя вызова
52.4 0.320 2 0.1600 main :: foo
45.9 0.280 200 0.0014 main :: bar
0.00 0.000 1 0.0000 DynaLoader :: импорт
0.00 0.000 1 0.0000 main :: baz
Инструмент dprofpp также может запустить профилировщик перед анализом данных профиля. Над
две команды могут быть выполнены с помощью одной команды dprofpp.
$ dprofpp -u -p test.pl
Обратитесь к «ФОРМАТУ ПРОФИЛЯ» в Devel :: DProf для описания необработанного профиля.
ВЫВОД
Столбцы бывают:
%Время
Процент времени, проведенного в этой рутине.
# Звонки
Количество обращений к этой программе.
сек / звонок
Среднее количество секунд на вызов этой процедуры.
Фамилия
Название процедуры.
КумулС
Время (в секундах), затраченное на эту процедуру, и подпрограммы, вызванные из нее.
Искл.сек.
Время (в секундах), затраченное на эту процедуру (не считая вызванных из нее).
Csec / c
Среднее время (в секундах), затраченное на каждый вызов этой подпрограммы (включая вызываемые
от него).
ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ
-a Сортировка в алфавитном порядке по именам подпрограмм.
-d Отменить любой используемый вид
-A Считать время для автоматически загружаемой подпрограммы как время для * :: AUTOLOAD. В противном случае время
для автозагрузки оно считается временем самой подпрограммы (нет возможности
отделить время автозагрузки от времени выполнения).
Это не будет иметь отношения к новым Perls. Об этом проинформируют «Девел :: ДПроф».
когда "АВТОЗАГРУЗКА" переключается на актуальную подпрограмму, поэтому отдельная статистика для
«АВТОЗАГРУЗКА» будет собираться независимо от того, установлена ли эта опция.
-R Подсчет анонимных подпрограмм, определенных в одном пакете, отдельно.
-E (по умолчанию) Отображать время всех подпрограмм, исключая время дочерних подпрограмм.
-F Принудительно генерировать поддельные отметки времени выхода, если dprofpp сообщает, что профиль
искаженный. Это полезно только в том случае, если dprofpp определяет, что профиль искажен из-за
к отсутствующим отметкам времени выхода. Вы сами по себе, если сделаете это. Проконсультируйтесь с ОШИБКАМИ
.
-I Отображение времени всех подпрограмм, включая время дочерних подпрограмм.
-l Сортировать по количеству обращений к подпрограммам. Это может помочь определить кандидатов на
встраивание.
-O CNT
Показывать только CNT подпрограммы. По умолчанию 15.
-p скрипт
Сообщает dprofpp, что он должен профилировать данный скрипт, а затем интерпретировать его профиль
данные. Видеть -Q.
-Q Используется с -p чтобы сообщить dprofpp о завершении работы после профилирования скрипта, без интерпретации
данные.
-q Не отображать заголовки столбцов.
-r Отображение истекшего времени в реальном времени, а не времени пользователя + системы.
-s Отображайте системное время, а не пользовательское + системное время.
-T Отобразить дерево вызовов подпрограмм на стандартный вывод. Статистика подпрограмм не отображается.
-t Отобразить дерево вызовов подпрограмм на стандартный вывод. Статистика подпрограмм не отображается.
Когда функция вызывается несколько раз подряд на одном и том же уровне вызова, тогда
он отображается один раз с подсчетом повторов.
-S Дисплей Объединять дерево вызовов подпрограмм на стандартный вывод. Статистика отображается по каждому
ветка дерева.
Когда функция вызывается множественным (не обязательно последовательный) раз в том же
branch, тогда все эти вызовы переходят в одну ветвь следующего уровня. Количество повторов
вывод вместе с комбинированным инклюзивным, эксклюзивным и детским временем.
Филиалы отсортированы по времени включения.
-U Не сортировать. Отображать в порядке, указанном в необработанном профиле.
-u Отображать пользовательское время, а не пользовательское + системное время.
-V Выведите номер версии dprofpp и выйдите. Если необработанный профиль найден, то его
Также будет отображаться переменная XS_VERSION.
-v Сортировать по среднему времени, затраченному на подпрограммы во время каждого вызова. Это может помочь определить
кандидаты на встраивание.
-z (по умолчанию) Сортировка по количеству использованного пользовательского + системного времени. Первые несколько строк должны показать
вы, какие подпрограммы используют больше всего.
-g "подпрограмма"
Игнорируйте подпрограммы, кроме «подпрограммы» и всего, что из нее вызывается.
-G
Сгруппируйте все вызовы, соответствующие шаблону, вместе. Например, это может быть
используется для группировки всех вызовов набора пакетов
-G "(пакет1: :) | (пакет2: :) | (пакет3: :)"
или сгруппировать подпрограммы по имени:
-G "getNum"
-P Используется с -G для объединения всех вызовов, которые не соответствуют -G.
-f
Отфильтруйте все вызовы, соответствующие шаблону.
-h Показать краткую справку и выйти.
-H Отобразите длинную справку и выйдите.
ОКРУЖАЮЩАЯ СРЕДА
Переменная окружения ДПРОФПП_ОПТС можно установить в строку, содержащую параметры для
dprofpp. Вы можете использовать это, если предпочитаете -I за -E или если хочешь -F все время.
Его добавляли довольно лениво, поэтому есть некоторые нежелательные побочные эффекты. Варианты на
командная строка должна переопределять параметры в DPROFPP_OPTS - но не рассчитывайте на это в этом
версия.
Используйте dprofppp онлайн с помощью сервисов onworks.net