Слияние кода завершено, страница обновится автоматически
Существуют и другие переменные среды, помимо CPUPROFILE, которые вы можете установить, чтобы настроить поведение профилировщика процессора; см. «Переменные среды» ниже. Профилировщик процессора доступен во всех протестированных нами системах на базе Unix; более подробную информацию см. в разделе УСТАНОВКА. В настоящее время он недоступен в Windows. ПРИМЕЧАНИЕ: Профилирование процессора не работает после fork (если только вы сразу же после этого не выполните вызов, подобный exec()). Кроме того, если вы выполняете fork, и дочерний процесс вызывает exit(), это может привести к повреждению данных профиля. Вы можете использовать _exit() для решения этой проблемы. Мы надеемся исправить обе проблемы в следующем выпуске perftools (надеюсь, perftools 1.2). ВСЁ В ОДНОМ ----------------- Если вы хотите, чтобы профилировщик процессора, профилировщик кучи и проверка утечки кучи были доступны для вашего приложения, вы можете сделать следующее: gcc -o myapp ... -lprofiler -ltcmalloc Однако, если у вас есть причина использовать статические версии библиотеки, такое связывание двух библиотек не будет работать: gcc -o myapp ... /usr/lib/libprofiler.a /usr/lib/libtcmalloc.a # ошибки! Вместо этого используйте специальную библиотеку libtcmalloc_and_profiler, которую мы создали специально для этой цели: gcc -o myapp ... /usr/lib/libtcmalloc_and_profiler.a ВАРИАНТЫ КОНФИГУРАЦИИ --------------------- Для опытных пользователей существует несколько флагов, которые можно передать в './configure', чтобы настроить производительность tcmalloc. (Это в дополнение к переменным среды, которые вы можете задать во время выполнения, чтобы повлиять на tcmalloc, как описано ниже.) Подробности см. в файле INSTALL. ПЕРЕМЕННЫЕ СРЕДЫ --------------------- Профилировщики процессора, кучи и проверки кучи будут бездействовать, не используя память или процессор, пока вы их не включите. (Таким образом, нет ничего плохого в том, чтобы связать -lprofiler с каждым приложением, а также -ltcmalloc при условии, что вы согласны использовать небиблиотечную библиотеку malloc.) Самый простой способ включить их — установить соответствующие переменные среды. У нас есть несколько переменных, которые позволяют вам включать/отключать функции, а также настраивать параметры. Вот некоторые из наиболее важных переменных: HEAPPROFILE=<pre> — включает профилирование кучи и выгружает данные с этим префиксом HEAPCHECK=<type> — включает проверку кучи со строгостью 'type' CPUPROFILE=<file> — включает профилирование процессора и выгружает данные в этот файл. PROFILESELECTED=1 — если установлено, профилировщик процессора будет профилировать только те участки кода, которые окружены ProfilerEnable()/ProfilerDisable(). CPUPROFILE_FREQUENCY=x— сколько прерываний в секунду делает профилировщик процессора. PERFTOOLS_VERBOSE=<level> — чем выше уровень, тем больше сообщений выдаёт malloc MALLOCSTATS=<level> — выводит статистику использования памяти при завершении программы Полный список переменных см. на страницах документации: docs/cpuprofile.html docs/heapprofile.html docs/heap_checker.html Также см. TCMALLOC_STACKTRACE_METHOD_VERBOSE и TCMALLOC_STACKTRACE_METHOD, кратко описанные в нашем файле INSTALL и на нашей вики-странице по адресу: https://github.com/gperftools/gperftools/wiki/gperftools'-stacktrace-capturing-methods-and-their-issues СБОРКА НА НЕ-LINUX СИСТЕМАХ ------------------------------ Perftools был разработан и протестирован на x86, aarch64 и riscv Linux системах, и он работает в полной мере только на этих системах. Тем не менее, нам удалось портировать большую часть библиотеки tcmalloc на FreeBSD, Solaris x86 (хотя недавно не тестировался), и Mac OS X (aarch64; x86 и ppc недавно не тестировались); и мы портировали базовую функциональность в tcmalloc_minimal на Windows. Подробности см. в INSTALL. Подробности о порте Windows см. в README_windows.txt. --- Первоначально написано: 17 мая 2011 г. Последнее обновление: 10 августа 2023 г.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )